@adnsistemas/pdf-lib 2.8.1 → 2.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (753) hide show
  1. package/README.md +7 -2
  2. package/cjs/api/PDFDocument.d.ts +3 -0
  3. package/cjs/api/PDFDocument.d.ts.map +1 -1
  4. package/cjs/api/PDFDocument.js +26 -21
  5. package/cjs/api/PDFDocument.js.map +1 -1
  6. package/cjs/api/PDFFont.d.ts.map +1 -1
  7. package/cjs/api/PDFFont.js +4 -2
  8. package/cjs/api/PDFFont.js.map +1 -1
  9. package/cjs/api/PDFPage.d.ts.map +1 -1
  10. package/cjs/api/PDFPage.js +5 -4
  11. package/cjs/api/PDFPage.js.map +1 -1
  12. package/cjs/api/form/PDFButton.d.ts +3 -0
  13. package/cjs/api/form/PDFButton.d.ts.map +1 -1
  14. package/cjs/api/form/PDFButton.js +6 -1
  15. package/cjs/api/form/PDFButton.js.map +1 -1
  16. package/cjs/api/form/PDFCheckBox.d.ts +3 -0
  17. package/cjs/api/form/PDFCheckBox.d.ts.map +1 -1
  18. package/cjs/api/form/PDFCheckBox.js +6 -1
  19. package/cjs/api/form/PDFCheckBox.js.map +1 -1
  20. package/cjs/api/form/PDFDropdown.d.ts +3 -0
  21. package/cjs/api/form/PDFDropdown.d.ts.map +1 -1
  22. package/cjs/api/form/PDFDropdown.js +6 -1
  23. package/cjs/api/form/PDFDropdown.js.map +1 -1
  24. package/cjs/api/form/PDFField.d.ts +3 -0
  25. package/cjs/api/form/PDFField.d.ts.map +1 -1
  26. package/cjs/api/form/PDFField.js +5 -0
  27. package/cjs/api/form/PDFField.js.map +1 -1
  28. package/cjs/api/form/PDFForm.d.ts.map +1 -1
  29. package/cjs/api/form/PDFForm.js +24 -22
  30. package/cjs/api/form/PDFForm.js.map +1 -1
  31. package/cjs/api/form/PDFOptionList.d.ts +3 -0
  32. package/cjs/api/form/PDFOptionList.d.ts.map +1 -1
  33. package/cjs/api/form/PDFOptionList.js +6 -1
  34. package/cjs/api/form/PDFOptionList.js.map +1 -1
  35. package/cjs/api/form/PDFRadioGroup.d.ts +3 -0
  36. package/cjs/api/form/PDFRadioGroup.d.ts.map +1 -1
  37. package/cjs/api/form/PDFRadioGroup.js +7 -2
  38. package/cjs/api/form/PDFRadioGroup.js.map +1 -1
  39. package/cjs/api/form/PDFSignature.d.ts +3 -0
  40. package/cjs/api/form/PDFSignature.d.ts.map +1 -1
  41. package/cjs/api/form/PDFSignature.js +5 -0
  42. package/cjs/api/form/PDFSignature.js.map +1 -1
  43. package/cjs/api/form/PDFTextField.d.ts +3 -0
  44. package/cjs/api/form/PDFTextField.d.ts.map +1 -1
  45. package/cjs/api/form/PDFTextField.js +6 -1
  46. package/cjs/api/form/PDFTextField.js.map +1 -1
  47. package/cjs/api/objects.d.ts +61 -0
  48. package/cjs/api/objects.d.ts.map +1 -1
  49. package/cjs/api/objects.js +97 -4
  50. package/cjs/api/objects.js.map +1 -1
  51. package/cjs/api/operators.d.ts +28 -24
  52. package/cjs/api/operators.d.ts.map +1 -1
  53. package/cjs/api/operators.js +33 -29
  54. package/cjs/api/operators.js.map +1 -1
  55. package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  56. package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
  57. package/cjs/api/snapshot/DefaultDocumentSnapshot.js +5 -0
  58. package/cjs/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
  59. package/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
  60. package/cjs/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
  61. package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  62. package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
  63. package/cjs/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
  64. package/cjs/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
  65. package/cjs/core/PDFContext.d.ts +1 -1
  66. package/cjs/core/PDFContext.d.ts.map +1 -1
  67. package/cjs/core/PDFContext.js +57 -49
  68. package/cjs/core/PDFContext.js.map +1 -1
  69. package/cjs/core/PDFObjectCopier.d.ts.map +1 -1
  70. package/cjs/core/PDFObjectCopier.js +6 -9
  71. package/cjs/core/PDFObjectCopier.js.map +1 -1
  72. package/cjs/core/acroform/PDFAcroButton.d.ts.map +1 -1
  73. package/cjs/core/acroform/PDFAcroButton.js +7 -3
  74. package/cjs/core/acroform/PDFAcroButton.js.map +1 -1
  75. package/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  76. package/cjs/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
  77. package/cjs/core/acroform/PDFAcroCheckBox.js +6 -1
  78. package/cjs/core/acroform/PDFAcroCheckBox.js.map +1 -1
  79. package/cjs/core/acroform/PDFAcroChoice.d.ts.map +1 -1
  80. package/cjs/core/acroform/PDFAcroChoice.js +22 -9
  81. package/cjs/core/acroform/PDFAcroChoice.js.map +1 -1
  82. package/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
  83. package/cjs/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
  84. package/cjs/core/acroform/PDFAcroComboBox.js +5 -0
  85. package/cjs/core/acroform/PDFAcroComboBox.js.map +1 -1
  86. package/cjs/core/acroform/PDFAcroField.d.ts +3 -0
  87. package/cjs/core/acroform/PDFAcroField.d.ts.map +1 -1
  88. package/cjs/core/acroform/PDFAcroField.js +9 -4
  89. package/cjs/core/acroform/PDFAcroField.js.map +1 -1
  90. package/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
  91. package/cjs/core/acroform/PDFAcroForm.d.ts.map +1 -1
  92. package/cjs/core/acroform/PDFAcroForm.js +7 -4
  93. package/cjs/core/acroform/PDFAcroForm.js.map +1 -1
  94. package/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
  95. package/cjs/core/acroform/PDFAcroListBox.d.ts.map +1 -1
  96. package/cjs/core/acroform/PDFAcroListBox.js +5 -0
  97. package/cjs/core/acroform/PDFAcroListBox.js.map +1 -1
  98. package/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  99. package/cjs/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
  100. package/cjs/core/acroform/PDFAcroNonTerminal.js +5 -0
  101. package/cjs/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  102. package/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
  103. package/cjs/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
  104. package/cjs/core/acroform/PDFAcroPushButton.js +5 -0
  105. package/cjs/core/acroform/PDFAcroPushButton.js.map +1 -1
  106. package/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  107. package/cjs/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
  108. package/cjs/core/acroform/PDFAcroRadioButton.js +6 -1
  109. package/cjs/core/acroform/PDFAcroRadioButton.js.map +1 -1
  110. package/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
  111. package/cjs/core/acroform/PDFAcroSignature.d.ts.map +1 -1
  112. package/cjs/core/acroform/PDFAcroSignature.js +5 -0
  113. package/cjs/core/acroform/PDFAcroSignature.js.map +1 -1
  114. package/cjs/core/acroform/PDFAcroText.d.ts +3 -0
  115. package/cjs/core/acroform/PDFAcroText.d.ts.map +1 -1
  116. package/cjs/core/acroform/PDFAcroText.js +9 -5
  117. package/cjs/core/acroform/PDFAcroText.js.map +1 -1
  118. package/cjs/core/acroform/utils.d.ts.map +1 -1
  119. package/cjs/core/acroform/utils.js +11 -7
  120. package/cjs/core/acroform/utils.js.map +1 -1
  121. package/cjs/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
  122. package/cjs/core/annotation/AppearanceCharacteristics.js +12 -11
  123. package/cjs/core/annotation/AppearanceCharacteristics.js.map +1 -1
  124. package/cjs/core/annotation/BorderStyle.d.ts.map +1 -1
  125. package/cjs/core/annotation/BorderStyle.js +2 -2
  126. package/cjs/core/annotation/BorderStyle.js.map +1 -1
  127. package/cjs/core/annotation/PDFAnnotation.d.ts.map +1 -1
  128. package/cjs/core/annotation/PDFAnnotation.js +4 -3
  129. package/cjs/core/annotation/PDFAnnotation.js.map +1 -1
  130. package/cjs/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
  131. package/cjs/core/annotation/PDFWidgetAnnotation.js +8 -9
  132. package/cjs/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  133. package/cjs/core/crypto.d.ts +3 -0
  134. package/cjs/core/crypto.d.ts.map +1 -1
  135. package/cjs/core/crypto.js +10 -5
  136. package/cjs/core/crypto.js.map +1 -1
  137. package/cjs/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
  138. package/cjs/core/embedders/PDFPageEmbedder.js +3 -4
  139. package/cjs/core/embedders/PDFPageEmbedder.js.map +1 -1
  140. package/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
  141. package/cjs/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
  142. package/cjs/core/embedders/StandardFontEmbedder.js +5 -0
  143. package/cjs/core/embedders/StandardFontEmbedder.js.map +1 -1
  144. package/cjs/core/interactive/ViewerPreferences.d.ts.map +1 -1
  145. package/cjs/core/interactive/ViewerPreferences.js +5 -6
  146. package/cjs/core/interactive/ViewerPreferences.js.map +1 -1
  147. package/cjs/core/objects/PDFArray.d.ts +3 -0
  148. package/cjs/core/objects/PDFArray.d.ts.map +1 -1
  149. package/cjs/core/objects/PDFArray.js +6 -1
  150. package/cjs/core/objects/PDFArray.js.map +1 -1
  151. package/cjs/core/objects/PDFBool.d.ts +3 -0
  152. package/cjs/core/objects/PDFBool.d.ts.map +1 -1
  153. package/cjs/core/objects/PDFBool.js +5 -0
  154. package/cjs/core/objects/PDFBool.js.map +1 -1
  155. package/cjs/core/objects/PDFDict.d.ts +3 -0
  156. package/cjs/core/objects/PDFDict.d.ts.map +1 -1
  157. package/cjs/core/objects/PDFDict.js +24 -14
  158. package/cjs/core/objects/PDFDict.js.map +1 -1
  159. package/cjs/core/objects/PDFHexString.d.ts +3 -0
  160. package/cjs/core/objects/PDFHexString.d.ts.map +1 -1
  161. package/cjs/core/objects/PDFHexString.js +5 -0
  162. package/cjs/core/objects/PDFHexString.js.map +1 -1
  163. package/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
  164. package/cjs/core/objects/PDFInvalidObject.d.ts.map +1 -1
  165. package/cjs/core/objects/PDFInvalidObject.js +5 -0
  166. package/cjs/core/objects/PDFInvalidObject.js.map +1 -1
  167. package/cjs/core/objects/PDFName.d.ts +3 -0
  168. package/cjs/core/objects/PDFName.d.ts.map +1 -1
  169. package/cjs/core/objects/PDFName.js +5 -0
  170. package/cjs/core/objects/PDFName.js.map +1 -1
  171. package/cjs/core/objects/PDFNull.d.ts +3 -0
  172. package/cjs/core/objects/PDFNull.d.ts.map +1 -1
  173. package/cjs/core/objects/PDFNull.js +5 -0
  174. package/cjs/core/objects/PDFNull.js.map +1 -1
  175. package/cjs/core/objects/PDFNumber.d.ts +3 -0
  176. package/cjs/core/objects/PDFNumber.d.ts.map +1 -1
  177. package/cjs/core/objects/PDFNumber.js +5 -0
  178. package/cjs/core/objects/PDFNumber.js.map +1 -1
  179. package/cjs/core/objects/PDFObject.d.ts +3 -0
  180. package/cjs/core/objects/PDFObject.d.ts.map +1 -1
  181. package/cjs/core/objects/PDFObject.js +5 -0
  182. package/cjs/core/objects/PDFObject.js.map +1 -1
  183. package/cjs/core/objects/PDFRawStream.d.ts +3 -0
  184. package/cjs/core/objects/PDFRawStream.d.ts.map +1 -1
  185. package/cjs/core/objects/PDFRawStream.js +5 -0
  186. package/cjs/core/objects/PDFRawStream.js.map +1 -1
  187. package/cjs/core/objects/PDFRef.d.ts +3 -0
  188. package/cjs/core/objects/PDFRef.d.ts.map +1 -1
  189. package/cjs/core/objects/PDFRef.js +5 -0
  190. package/cjs/core/objects/PDFRef.js.map +1 -1
  191. package/cjs/core/objects/PDFStream.d.ts +3 -0
  192. package/cjs/core/objects/PDFStream.d.ts.map +1 -1
  193. package/cjs/core/objects/PDFStream.js +5 -0
  194. package/cjs/core/objects/PDFStream.js.map +1 -1
  195. package/cjs/core/objects/PDFString.d.ts +3 -0
  196. package/cjs/core/objects/PDFString.d.ts.map +1 -1
  197. package/cjs/core/objects/PDFString.js +5 -0
  198. package/cjs/core/objects/PDFString.js.map +1 -1
  199. package/cjs/core/operators/PDFOperator.d.ts.map +1 -1
  200. package/cjs/core/operators/PDFOperator.js +9 -4
  201. package/cjs/core/operators/PDFOperator.js.map +1 -1
  202. package/cjs/core/parser/PDFObjectParser.d.ts.map +1 -1
  203. package/cjs/core/parser/PDFObjectParser.js +2 -1
  204. package/cjs/core/parser/PDFObjectParser.js.map +1 -1
  205. package/cjs/core/parser/PDFParser.d.ts.map +1 -1
  206. package/cjs/core/parser/PDFParser.js +8 -7
  207. package/cjs/core/parser/PDFParser.js.map +1 -1
  208. package/cjs/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
  209. package/cjs/core/parser/PDFXRefStreamParser.js +8 -3
  210. package/cjs/core/parser/PDFXRefStreamParser.js.map +1 -1
  211. package/cjs/core/streams/decode.d.ts.map +1 -1
  212. package/cjs/core/streams/decode.js +5 -5
  213. package/cjs/core/streams/decode.js.map +1 -1
  214. package/cjs/core/structures/PDFCatalog.d.ts +3 -0
  215. package/cjs/core/structures/PDFCatalog.d.ts.map +1 -1
  216. package/cjs/core/structures/PDFCatalog.js +5 -0
  217. package/cjs/core/structures/PDFCatalog.js.map +1 -1
  218. package/cjs/core/structures/PDFContentStream.d.ts +3 -0
  219. package/cjs/core/structures/PDFContentStream.d.ts.map +1 -1
  220. package/cjs/core/structures/PDFContentStream.js +5 -0
  221. package/cjs/core/structures/PDFContentStream.js.map +1 -1
  222. package/cjs/core/structures/PDFObjectStream.d.ts +3 -0
  223. package/cjs/core/structures/PDFObjectStream.d.ts.map +1 -1
  224. package/cjs/core/structures/PDFObjectStream.js +5 -0
  225. package/cjs/core/structures/PDFObjectStream.js.map +1 -1
  226. package/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
  227. package/cjs/core/structures/PDFPageLeaf.d.ts.map +1 -1
  228. package/cjs/core/structures/PDFPageLeaf.js +7 -3
  229. package/cjs/core/structures/PDFPageLeaf.js.map +1 -1
  230. package/cjs/core/structures/PDFPageTree.d.ts +3 -0
  231. package/cjs/core/structures/PDFPageTree.d.ts.map +1 -1
  232. package/cjs/core/structures/PDFPageTree.js +11 -7
  233. package/cjs/core/structures/PDFPageTree.js.map +1 -1
  234. package/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
  235. package/cjs/core/writers/PDFStreamWriter.d.ts.map +1 -1
  236. package/cjs/core/writers/PDFStreamWriter.js +11 -12
  237. package/cjs/core/writers/PDFStreamWriter.js.map +1 -1
  238. package/cjs/core/writers/PDFWriter.d.ts +3 -0
  239. package/cjs/core/writers/PDFWriter.d.ts.map +1 -1
  240. package/cjs/core/writers/PDFWriter.js +13 -8
  241. package/cjs/core/writers/PDFWriter.js.map +1 -1
  242. package/cjs/utils/elements/Arc.d.ts +3 -0
  243. package/cjs/utils/elements/Arc.d.ts.map +1 -1
  244. package/cjs/utils/elements/Arc.js +6 -1
  245. package/cjs/utils/elements/Arc.js.map +1 -1
  246. package/cjs/utils/elements/Circle.d.ts +3 -0
  247. package/cjs/utils/elements/Circle.d.ts.map +1 -1
  248. package/cjs/utils/elements/Circle.js +6 -1
  249. package/cjs/utils/elements/Circle.js.map +1 -1
  250. package/cjs/utils/elements/Ellipse.d.ts +3 -0
  251. package/cjs/utils/elements/Ellipse.d.ts.map +1 -1
  252. package/cjs/utils/elements/Ellipse.js +6 -1
  253. package/cjs/utils/elements/Ellipse.js.map +1 -1
  254. package/cjs/utils/elements/GraphElement.d.ts +2 -0
  255. package/cjs/utils/elements/GraphElement.d.ts.map +1 -1
  256. package/cjs/utils/elements/GraphElement.js.map +1 -1
  257. package/cjs/utils/elements/Line.d.ts +3 -0
  258. package/cjs/utils/elements/Line.d.ts.map +1 -1
  259. package/cjs/utils/elements/Line.js +6 -1
  260. package/cjs/utils/elements/Line.js.map +1 -1
  261. package/cjs/utils/elements/Plot.d.ts +3 -0
  262. package/cjs/utils/elements/Plot.d.ts.map +1 -1
  263. package/cjs/utils/elements/Plot.js +9 -2
  264. package/cjs/utils/elements/Plot.js.map +1 -1
  265. package/cjs/utils/elements/Point.d.ts +3 -0
  266. package/cjs/utils/elements/Point.d.ts.map +1 -1
  267. package/cjs/utils/elements/Point.js +6 -1
  268. package/cjs/utils/elements/Point.js.map +1 -1
  269. package/cjs/utils/elements/Rectangle.d.ts +3 -0
  270. package/cjs/utils/elements/Rectangle.d.ts.map +1 -1
  271. package/cjs/utils/elements/Rectangle.js +6 -1
  272. package/cjs/utils/elements/Rectangle.js.map +1 -1
  273. package/cjs/utils/elements/Segment.d.ts +3 -0
  274. package/cjs/utils/elements/Segment.d.ts.map +1 -1
  275. package/cjs/utils/elements/Segment.js +8 -4
  276. package/cjs/utils/elements/Segment.js.map +1 -1
  277. package/cjs/utils/intersections.d.ts.map +1 -1
  278. package/cjs/utils/intersections.js +32 -35
  279. package/cjs/utils/intersections.js.map +1 -1
  280. package/dist/pdf-lib.esm.js +4834 -4507
  281. package/dist/pdf-lib.esm.js.map +1 -1
  282. package/dist/pdf-lib.esm.min.js +3 -3
  283. package/dist/pdf-lib.esm.min.js.map +1 -1
  284. package/dist/pdf-lib.js +4834 -4506
  285. package/dist/pdf-lib.js.map +1 -1
  286. package/dist/pdf-lib.min.js +3 -3
  287. package/dist/pdf-lib.min.js.map +1 -1
  288. package/es/api/PDFDocument.d.ts +3 -0
  289. package/es/api/PDFDocument.d.ts.map +1 -1
  290. package/es/api/PDFDocument.js +27 -22
  291. package/es/api/PDFDocument.js.map +1 -1
  292. package/es/api/PDFFont.d.ts.map +1 -1
  293. package/es/api/PDFFont.js +4 -2
  294. package/es/api/PDFFont.js.map +1 -1
  295. package/es/api/PDFPage.d.ts.map +1 -1
  296. package/es/api/PDFPage.js +6 -5
  297. package/es/api/PDFPage.js.map +1 -1
  298. package/es/api/form/PDFButton.d.ts +3 -0
  299. package/es/api/form/PDFButton.d.ts.map +1 -1
  300. package/es/api/form/PDFButton.js +7 -2
  301. package/es/api/form/PDFButton.js.map +1 -1
  302. package/es/api/form/PDFCheckBox.d.ts +3 -0
  303. package/es/api/form/PDFCheckBox.d.ts.map +1 -1
  304. package/es/api/form/PDFCheckBox.js +7 -2
  305. package/es/api/form/PDFCheckBox.js.map +1 -1
  306. package/es/api/form/PDFDropdown.d.ts +3 -0
  307. package/es/api/form/PDFDropdown.d.ts.map +1 -1
  308. package/es/api/form/PDFDropdown.js +7 -2
  309. package/es/api/form/PDFDropdown.js.map +1 -1
  310. package/es/api/form/PDFField.d.ts +3 -0
  311. package/es/api/form/PDFField.d.ts.map +1 -1
  312. package/es/api/form/PDFField.js +5 -0
  313. package/es/api/form/PDFField.js.map +1 -1
  314. package/es/api/form/PDFForm.d.ts.map +1 -1
  315. package/es/api/form/PDFForm.js +25 -23
  316. package/es/api/form/PDFForm.js.map +1 -1
  317. package/es/api/form/PDFOptionList.d.ts +3 -0
  318. package/es/api/form/PDFOptionList.d.ts.map +1 -1
  319. package/es/api/form/PDFOptionList.js +7 -2
  320. package/es/api/form/PDFOptionList.js.map +1 -1
  321. package/es/api/form/PDFRadioGroup.d.ts +3 -0
  322. package/es/api/form/PDFRadioGroup.d.ts.map +1 -1
  323. package/es/api/form/PDFRadioGroup.js +8 -3
  324. package/es/api/form/PDFRadioGroup.js.map +1 -1
  325. package/es/api/form/PDFSignature.d.ts +3 -0
  326. package/es/api/form/PDFSignature.d.ts.map +1 -1
  327. package/es/api/form/PDFSignature.js +5 -0
  328. package/es/api/form/PDFSignature.js.map +1 -1
  329. package/es/api/form/PDFTextField.d.ts +3 -0
  330. package/es/api/form/PDFTextField.d.ts.map +1 -1
  331. package/es/api/form/PDFTextField.js +7 -2
  332. package/es/api/form/PDFTextField.js.map +1 -1
  333. package/es/api/objects.d.ts +61 -0
  334. package/es/api/objects.d.ts.map +1 -1
  335. package/es/api/objects.js +95 -3
  336. package/es/api/objects.js.map +1 -1
  337. package/es/api/operators.d.ts +28 -24
  338. package/es/api/operators.d.ts.map +1 -1
  339. package/es/api/operators.js +32 -28
  340. package/es/api/operators.js.map +1 -1
  341. package/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  342. package/es/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
  343. package/es/api/snapshot/DefaultDocumentSnapshot.js +5 -0
  344. package/es/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
  345. package/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
  346. package/es/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
  347. package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  348. package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
  349. package/es/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
  350. package/es/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
  351. package/es/core/PDFContext.d.ts +1 -1
  352. package/es/core/PDFContext.d.ts.map +1 -1
  353. package/es/core/PDFContext.js +57 -49
  354. package/es/core/PDFContext.js.map +1 -1
  355. package/es/core/PDFObjectCopier.d.ts.map +1 -1
  356. package/es/core/PDFObjectCopier.js +6 -9
  357. package/es/core/PDFObjectCopier.js.map +1 -1
  358. package/es/core/acroform/PDFAcroButton.d.ts.map +1 -1
  359. package/es/core/acroform/PDFAcroButton.js +7 -3
  360. package/es/core/acroform/PDFAcroButton.js.map +1 -1
  361. package/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  362. package/es/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
  363. package/es/core/acroform/PDFAcroCheckBox.js +6 -1
  364. package/es/core/acroform/PDFAcroCheckBox.js.map +1 -1
  365. package/es/core/acroform/PDFAcroChoice.d.ts.map +1 -1
  366. package/es/core/acroform/PDFAcroChoice.js +22 -9
  367. package/es/core/acroform/PDFAcroChoice.js.map +1 -1
  368. package/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
  369. package/es/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
  370. package/es/core/acroform/PDFAcroComboBox.js +5 -0
  371. package/es/core/acroform/PDFAcroComboBox.js.map +1 -1
  372. package/es/core/acroform/PDFAcroField.d.ts +3 -0
  373. package/es/core/acroform/PDFAcroField.d.ts.map +1 -1
  374. package/es/core/acroform/PDFAcroField.js +9 -4
  375. package/es/core/acroform/PDFAcroField.js.map +1 -1
  376. package/es/core/acroform/PDFAcroForm.d.ts +3 -0
  377. package/es/core/acroform/PDFAcroForm.d.ts.map +1 -1
  378. package/es/core/acroform/PDFAcroForm.js +7 -4
  379. package/es/core/acroform/PDFAcroForm.js.map +1 -1
  380. package/es/core/acroform/PDFAcroListBox.d.ts +3 -0
  381. package/es/core/acroform/PDFAcroListBox.d.ts.map +1 -1
  382. package/es/core/acroform/PDFAcroListBox.js +5 -0
  383. package/es/core/acroform/PDFAcroListBox.js.map +1 -1
  384. package/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  385. package/es/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
  386. package/es/core/acroform/PDFAcroNonTerminal.js +5 -0
  387. package/es/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  388. package/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
  389. package/es/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
  390. package/es/core/acroform/PDFAcroPushButton.js +5 -0
  391. package/es/core/acroform/PDFAcroPushButton.js.map +1 -1
  392. package/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  393. package/es/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
  394. package/es/core/acroform/PDFAcroRadioButton.js +6 -1
  395. package/es/core/acroform/PDFAcroRadioButton.js.map +1 -1
  396. package/es/core/acroform/PDFAcroSignature.d.ts +3 -0
  397. package/es/core/acroform/PDFAcroSignature.d.ts.map +1 -1
  398. package/es/core/acroform/PDFAcroSignature.js +5 -0
  399. package/es/core/acroform/PDFAcroSignature.js.map +1 -1
  400. package/es/core/acroform/PDFAcroText.d.ts +3 -0
  401. package/es/core/acroform/PDFAcroText.d.ts.map +1 -1
  402. package/es/core/acroform/PDFAcroText.js +9 -5
  403. package/es/core/acroform/PDFAcroText.js.map +1 -1
  404. package/es/core/acroform/utils.d.ts.map +1 -1
  405. package/es/core/acroform/utils.js +11 -7
  406. package/es/core/acroform/utils.js.map +1 -1
  407. package/es/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
  408. package/es/core/annotation/AppearanceCharacteristics.js +12 -11
  409. package/es/core/annotation/AppearanceCharacteristics.js.map +1 -1
  410. package/es/core/annotation/BorderStyle.d.ts.map +1 -1
  411. package/es/core/annotation/BorderStyle.js +2 -2
  412. package/es/core/annotation/BorderStyle.js.map +1 -1
  413. package/es/core/annotation/PDFAnnotation.d.ts.map +1 -1
  414. package/es/core/annotation/PDFAnnotation.js +4 -3
  415. package/es/core/annotation/PDFAnnotation.js.map +1 -1
  416. package/es/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
  417. package/es/core/annotation/PDFWidgetAnnotation.js +8 -9
  418. package/es/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  419. package/es/core/crypto.d.ts +3 -0
  420. package/es/core/crypto.d.ts.map +1 -1
  421. package/es/core/crypto.js +10 -5
  422. package/es/core/crypto.js.map +1 -1
  423. package/es/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
  424. package/es/core/embedders/PDFPageEmbedder.js +3 -4
  425. package/es/core/embedders/PDFPageEmbedder.js.map +1 -1
  426. package/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
  427. package/es/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
  428. package/es/core/embedders/StandardFontEmbedder.js +5 -0
  429. package/es/core/embedders/StandardFontEmbedder.js.map +1 -1
  430. package/es/core/interactive/ViewerPreferences.d.ts.map +1 -1
  431. package/es/core/interactive/ViewerPreferences.js +5 -6
  432. package/es/core/interactive/ViewerPreferences.js.map +1 -1
  433. package/es/core/objects/PDFArray.d.ts +3 -0
  434. package/es/core/objects/PDFArray.d.ts.map +1 -1
  435. package/es/core/objects/PDFArray.js +6 -1
  436. package/es/core/objects/PDFArray.js.map +1 -1
  437. package/es/core/objects/PDFBool.d.ts +3 -0
  438. package/es/core/objects/PDFBool.d.ts.map +1 -1
  439. package/es/core/objects/PDFBool.js +5 -0
  440. package/es/core/objects/PDFBool.js.map +1 -1
  441. package/es/core/objects/PDFDict.d.ts +3 -0
  442. package/es/core/objects/PDFDict.d.ts.map +1 -1
  443. package/es/core/objects/PDFDict.js +24 -14
  444. package/es/core/objects/PDFDict.js.map +1 -1
  445. package/es/core/objects/PDFHexString.d.ts +3 -0
  446. package/es/core/objects/PDFHexString.d.ts.map +1 -1
  447. package/es/core/objects/PDFHexString.js +5 -0
  448. package/es/core/objects/PDFHexString.js.map +1 -1
  449. package/es/core/objects/PDFInvalidObject.d.ts +3 -0
  450. package/es/core/objects/PDFInvalidObject.d.ts.map +1 -1
  451. package/es/core/objects/PDFInvalidObject.js +5 -0
  452. package/es/core/objects/PDFInvalidObject.js.map +1 -1
  453. package/es/core/objects/PDFName.d.ts +3 -0
  454. package/es/core/objects/PDFName.d.ts.map +1 -1
  455. package/es/core/objects/PDFName.js +5 -0
  456. package/es/core/objects/PDFName.js.map +1 -1
  457. package/es/core/objects/PDFNull.d.ts +3 -0
  458. package/es/core/objects/PDFNull.d.ts.map +1 -1
  459. package/es/core/objects/PDFNull.js +5 -0
  460. package/es/core/objects/PDFNull.js.map +1 -1
  461. package/es/core/objects/PDFNumber.d.ts +3 -0
  462. package/es/core/objects/PDFNumber.d.ts.map +1 -1
  463. package/es/core/objects/PDFNumber.js +5 -0
  464. package/es/core/objects/PDFNumber.js.map +1 -1
  465. package/es/core/objects/PDFObject.d.ts +3 -0
  466. package/es/core/objects/PDFObject.d.ts.map +1 -1
  467. package/es/core/objects/PDFObject.js +5 -0
  468. package/es/core/objects/PDFObject.js.map +1 -1
  469. package/es/core/objects/PDFRawStream.d.ts +3 -0
  470. package/es/core/objects/PDFRawStream.d.ts.map +1 -1
  471. package/es/core/objects/PDFRawStream.js +5 -0
  472. package/es/core/objects/PDFRawStream.js.map +1 -1
  473. package/es/core/objects/PDFRef.d.ts +3 -0
  474. package/es/core/objects/PDFRef.d.ts.map +1 -1
  475. package/es/core/objects/PDFRef.js +5 -0
  476. package/es/core/objects/PDFRef.js.map +1 -1
  477. package/es/core/objects/PDFStream.d.ts +3 -0
  478. package/es/core/objects/PDFStream.d.ts.map +1 -1
  479. package/es/core/objects/PDFStream.js +5 -0
  480. package/es/core/objects/PDFStream.js.map +1 -1
  481. package/es/core/objects/PDFString.d.ts +3 -0
  482. package/es/core/objects/PDFString.d.ts.map +1 -1
  483. package/es/core/objects/PDFString.js +5 -0
  484. package/es/core/objects/PDFString.js.map +1 -1
  485. package/es/core/operators/PDFOperator.d.ts.map +1 -1
  486. package/es/core/operators/PDFOperator.js +9 -4
  487. package/es/core/operators/PDFOperator.js.map +1 -1
  488. package/es/core/parser/PDFObjectParser.d.ts.map +1 -1
  489. package/es/core/parser/PDFObjectParser.js +2 -1
  490. package/es/core/parser/PDFObjectParser.js.map +1 -1
  491. package/es/core/parser/PDFParser.d.ts.map +1 -1
  492. package/es/core/parser/PDFParser.js +8 -7
  493. package/es/core/parser/PDFParser.js.map +1 -1
  494. package/es/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
  495. package/es/core/parser/PDFXRefStreamParser.js +8 -3
  496. package/es/core/parser/PDFXRefStreamParser.js.map +1 -1
  497. package/es/core/streams/decode.d.ts.map +1 -1
  498. package/es/core/streams/decode.js +5 -5
  499. package/es/core/streams/decode.js.map +1 -1
  500. package/es/core/structures/PDFCatalog.d.ts +3 -0
  501. package/es/core/structures/PDFCatalog.d.ts.map +1 -1
  502. package/es/core/structures/PDFCatalog.js +5 -0
  503. package/es/core/structures/PDFCatalog.js.map +1 -1
  504. package/es/core/structures/PDFContentStream.d.ts +3 -0
  505. package/es/core/structures/PDFContentStream.d.ts.map +1 -1
  506. package/es/core/structures/PDFContentStream.js +5 -0
  507. package/es/core/structures/PDFContentStream.js.map +1 -1
  508. package/es/core/structures/PDFObjectStream.d.ts +3 -0
  509. package/es/core/structures/PDFObjectStream.d.ts.map +1 -1
  510. package/es/core/structures/PDFObjectStream.js +5 -0
  511. package/es/core/structures/PDFObjectStream.js.map +1 -1
  512. package/es/core/structures/PDFPageLeaf.d.ts +3 -0
  513. package/es/core/structures/PDFPageLeaf.d.ts.map +1 -1
  514. package/es/core/structures/PDFPageLeaf.js +7 -3
  515. package/es/core/structures/PDFPageLeaf.js.map +1 -1
  516. package/es/core/structures/PDFPageTree.d.ts +3 -0
  517. package/es/core/structures/PDFPageTree.d.ts.map +1 -1
  518. package/es/core/structures/PDFPageTree.js +11 -7
  519. package/es/core/structures/PDFPageTree.js.map +1 -1
  520. package/es/core/writers/PDFStreamWriter.d.ts +3 -0
  521. package/es/core/writers/PDFStreamWriter.d.ts.map +1 -1
  522. package/es/core/writers/PDFStreamWriter.js +11 -12
  523. package/es/core/writers/PDFStreamWriter.js.map +1 -1
  524. package/es/core/writers/PDFWriter.d.ts +3 -0
  525. package/es/core/writers/PDFWriter.d.ts.map +1 -1
  526. package/es/core/writers/PDFWriter.js +14 -9
  527. package/es/core/writers/PDFWriter.js.map +1 -1
  528. package/es/utils/elements/Arc.d.ts +3 -0
  529. package/es/utils/elements/Arc.d.ts.map +1 -1
  530. package/es/utils/elements/Arc.js +6 -1
  531. package/es/utils/elements/Arc.js.map +1 -1
  532. package/es/utils/elements/Circle.d.ts +3 -0
  533. package/es/utils/elements/Circle.d.ts.map +1 -1
  534. package/es/utils/elements/Circle.js +6 -1
  535. package/es/utils/elements/Circle.js.map +1 -1
  536. package/es/utils/elements/Ellipse.d.ts +3 -0
  537. package/es/utils/elements/Ellipse.d.ts.map +1 -1
  538. package/es/utils/elements/Ellipse.js +6 -1
  539. package/es/utils/elements/Ellipse.js.map +1 -1
  540. package/es/utils/elements/GraphElement.d.ts +2 -0
  541. package/es/utils/elements/GraphElement.d.ts.map +1 -1
  542. package/es/utils/elements/GraphElement.js.map +1 -1
  543. package/es/utils/elements/Line.d.ts +3 -0
  544. package/es/utils/elements/Line.d.ts.map +1 -1
  545. package/es/utils/elements/Line.js +6 -1
  546. package/es/utils/elements/Line.js.map +1 -1
  547. package/es/utils/elements/Plot.d.ts +3 -0
  548. package/es/utils/elements/Plot.d.ts.map +1 -1
  549. package/es/utils/elements/Plot.js +9 -2
  550. package/es/utils/elements/Plot.js.map +1 -1
  551. package/es/utils/elements/Point.d.ts +3 -0
  552. package/es/utils/elements/Point.d.ts.map +1 -1
  553. package/es/utils/elements/Point.js +6 -1
  554. package/es/utils/elements/Point.js.map +1 -1
  555. package/es/utils/elements/Rectangle.d.ts +3 -0
  556. package/es/utils/elements/Rectangle.d.ts.map +1 -1
  557. package/es/utils/elements/Rectangle.js +6 -1
  558. package/es/utils/elements/Rectangle.js.map +1 -1
  559. package/es/utils/elements/Segment.d.ts +3 -0
  560. package/es/utils/elements/Segment.d.ts.map +1 -1
  561. package/es/utils/elements/Segment.js +8 -4
  562. package/es/utils/elements/Segment.js.map +1 -1
  563. package/es/utils/intersections.d.ts.map +1 -1
  564. package/es/utils/intersections.js +32 -35
  565. package/es/utils/intersections.js.map +1 -1
  566. package/package.json +1 -1
  567. package/src/api/PDFDocument.ts +48 -44
  568. package/src/api/PDFFont.ts +5 -3
  569. package/src/api/PDFPage.ts +10 -6
  570. package/src/api/form/PDFButton.ts +10 -8
  571. package/src/api/form/PDFCheckBox.ts +7 -2
  572. package/src/api/form/PDFDropdown.ts +9 -3
  573. package/src/api/form/PDFField.ts +5 -0
  574. package/src/api/form/PDFForm.ts +53 -34
  575. package/src/api/form/PDFOptionList.ts +9 -3
  576. package/src/api/form/PDFRadioGroup.ts +8 -3
  577. package/src/api/form/PDFSignature.ts +5 -0
  578. package/src/api/form/PDFTextField.ts +9 -3
  579. package/src/api/objects.ts +90 -3
  580. package/src/api/operators.ts +32 -28
  581. package/src/api/snapshot/DefaultDocumentSnapshot.ts +6 -0
  582. package/src/api/snapshot/DocumentSnapshot.ts +3 -0
  583. package/src/api/snapshot/IncrementalDocumentSnapshot.ts +6 -0
  584. package/src/core/PDFContext.ts +77 -56
  585. package/src/core/PDFObjectCopier.ts +6 -5
  586. package/src/core/acroform/PDFAcroButton.ts +20 -10
  587. package/src/core/acroform/PDFAcroCheckBox.ts +6 -1
  588. package/src/core/acroform/PDFAcroChoice.ts +43 -17
  589. package/src/core/acroform/PDFAcroComboBox.ts +5 -0
  590. package/src/core/acroform/PDFAcroField.ts +14 -5
  591. package/src/core/acroform/PDFAcroForm.ts +7 -3
  592. package/src/core/acroform/PDFAcroListBox.ts +5 -0
  593. package/src/core/acroform/PDFAcroNonTerminal.ts +5 -0
  594. package/src/core/acroform/PDFAcroPushButton.ts +5 -0
  595. package/src/core/acroform/PDFAcroRadioButton.ts +6 -1
  596. package/src/core/acroform/PDFAcroSignature.ts +5 -0
  597. package/src/core/acroform/PDFAcroText.ts +12 -3
  598. package/src/core/acroform/utils.ts +16 -7
  599. package/src/core/annotation/AppearanceCharacteristics.ts +23 -8
  600. package/src/core/annotation/BorderStyle.ts +2 -1
  601. package/src/core/annotation/PDFAnnotation.ts +7 -2
  602. package/src/core/annotation/PDFWidgetAnnotation.ts +13 -8
  603. package/src/core/crypto.ts +13 -5
  604. package/src/core/embedders/PDFPageEmbedder.ts +5 -4
  605. package/src/core/embedders/StandardFontEmbedder.ts +5 -0
  606. package/src/core/interactive/ViewerPreferences.ts +9 -4
  607. package/src/core/objects/PDFArray.ts +7 -2
  608. package/src/core/objects/PDFBool.ts +5 -0
  609. package/src/core/objects/PDFDict.ts +32 -15
  610. package/src/core/objects/PDFHexString.ts +5 -0
  611. package/src/core/objects/PDFInvalidObject.ts +5 -0
  612. package/src/core/objects/PDFName.ts +5 -0
  613. package/src/core/objects/PDFNull.ts +5 -0
  614. package/src/core/objects/PDFNumber.ts +5 -0
  615. package/src/core/objects/PDFObject.ts +6 -0
  616. package/src/core/objects/PDFRawStream.ts +5 -0
  617. package/src/core/objects/PDFRef.ts +5 -0
  618. package/src/core/objects/PDFStream.ts +5 -0
  619. package/src/core/objects/PDFString.ts +5 -0
  620. package/src/core/operators/PDFOperator.ts +11 -5
  621. package/src/core/parser/PDFObjectParser.ts +3 -2
  622. package/src/core/parser/PDFParser.ts +13 -8
  623. package/src/core/parser/PDFXRefStreamParser.ts +9 -4
  624. package/src/core/streams/decode.ts +10 -9
  625. package/src/core/structures/PDFCatalog.ts +5 -0
  626. package/src/core/structures/PDFContentStream.ts +5 -0
  627. package/src/core/structures/PDFObjectStream.ts +5 -0
  628. package/src/core/structures/PDFPageLeaf.ts +9 -4
  629. package/src/core/structures/PDFPageTree.ts +28 -13
  630. package/src/core/writers/PDFStreamWriter.ts +11 -11
  631. package/src/core/writers/PDFWriter.ts +19 -12
  632. package/src/utils/elements/Arc.ts +9 -4
  633. package/src/utils/elements/Circle.ts +8 -3
  634. package/src/utils/elements/Ellipse.ts +9 -4
  635. package/src/utils/elements/GraphElement.ts +3 -0
  636. package/src/utils/elements/Line.ts +12 -4
  637. package/src/utils/elements/Plot.ts +9 -2
  638. package/src/utils/elements/Point.ts +7 -2
  639. package/src/utils/elements/Rectangle.ts +8 -3
  640. package/src/utils/elements/Segment.ts +10 -6
  641. package/src/utils/intersections.ts +81 -51
  642. package/ts3.4/cjs/api/PDFDocument.d.ts +3 -0
  643. package/ts3.4/cjs/api/form/PDFButton.d.ts +3 -0
  644. package/ts3.4/cjs/api/form/PDFCheckBox.d.ts +3 -0
  645. package/ts3.4/cjs/api/form/PDFDropdown.d.ts +3 -0
  646. package/ts3.4/cjs/api/form/PDFField.d.ts +3 -0
  647. package/ts3.4/cjs/api/form/PDFOptionList.d.ts +3 -0
  648. package/ts3.4/cjs/api/form/PDFRadioGroup.d.ts +3 -0
  649. package/ts3.4/cjs/api/form/PDFSignature.d.ts +3 -0
  650. package/ts3.4/cjs/api/form/PDFTextField.d.ts +3 -0
  651. package/ts3.4/cjs/api/objects.d.ts +61 -0
  652. package/ts3.4/cjs/api/operators.d.ts +28 -24
  653. package/ts3.4/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  654. package/ts3.4/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
  655. package/ts3.4/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  656. package/ts3.4/cjs/core/PDFContext.d.ts +1 -1
  657. package/ts3.4/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  658. package/ts3.4/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
  659. package/ts3.4/cjs/core/acroform/PDFAcroField.d.ts +3 -0
  660. package/ts3.4/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
  661. package/ts3.4/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
  662. package/ts3.4/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  663. package/ts3.4/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
  664. package/ts3.4/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  665. package/ts3.4/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
  666. package/ts3.4/cjs/core/acroform/PDFAcroText.d.ts +3 -0
  667. package/ts3.4/cjs/core/crypto.d.ts +3 -0
  668. package/ts3.4/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
  669. package/ts3.4/cjs/core/objects/PDFArray.d.ts +3 -0
  670. package/ts3.4/cjs/core/objects/PDFBool.d.ts +3 -0
  671. package/ts3.4/cjs/core/objects/PDFDict.d.ts +3 -0
  672. package/ts3.4/cjs/core/objects/PDFHexString.d.ts +3 -0
  673. package/ts3.4/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
  674. package/ts3.4/cjs/core/objects/PDFName.d.ts +3 -0
  675. package/ts3.4/cjs/core/objects/PDFNull.d.ts +3 -0
  676. package/ts3.4/cjs/core/objects/PDFNumber.d.ts +3 -0
  677. package/ts3.4/cjs/core/objects/PDFObject.d.ts +3 -0
  678. package/ts3.4/cjs/core/objects/PDFRawStream.d.ts +3 -0
  679. package/ts3.4/cjs/core/objects/PDFRef.d.ts +3 -0
  680. package/ts3.4/cjs/core/objects/PDFStream.d.ts +3 -0
  681. package/ts3.4/cjs/core/objects/PDFString.d.ts +3 -0
  682. package/ts3.4/cjs/core/structures/PDFCatalog.d.ts +3 -0
  683. package/ts3.4/cjs/core/structures/PDFContentStream.d.ts +3 -0
  684. package/ts3.4/cjs/core/structures/PDFObjectStream.d.ts +3 -0
  685. package/ts3.4/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
  686. package/ts3.4/cjs/core/structures/PDFPageTree.d.ts +3 -0
  687. package/ts3.4/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
  688. package/ts3.4/cjs/core/writers/PDFWriter.d.ts +3 -0
  689. package/ts3.4/cjs/utils/elements/Arc.d.ts +3 -0
  690. package/ts3.4/cjs/utils/elements/Circle.d.ts +3 -0
  691. package/ts3.4/cjs/utils/elements/Ellipse.d.ts +3 -0
  692. package/ts3.4/cjs/utils/elements/GraphElement.d.ts +2 -0
  693. package/ts3.4/cjs/utils/elements/Line.d.ts +3 -0
  694. package/ts3.4/cjs/utils/elements/Plot.d.ts +3 -0
  695. package/ts3.4/cjs/utils/elements/Point.d.ts +3 -0
  696. package/ts3.4/cjs/utils/elements/Rectangle.d.ts +3 -0
  697. package/ts3.4/cjs/utils/elements/Segment.d.ts +3 -0
  698. package/ts3.4/es/api/PDFDocument.d.ts +3 -0
  699. package/ts3.4/es/api/form/PDFButton.d.ts +3 -0
  700. package/ts3.4/es/api/form/PDFCheckBox.d.ts +3 -0
  701. package/ts3.4/es/api/form/PDFDropdown.d.ts +3 -0
  702. package/ts3.4/es/api/form/PDFField.d.ts +3 -0
  703. package/ts3.4/es/api/form/PDFOptionList.d.ts +3 -0
  704. package/ts3.4/es/api/form/PDFRadioGroup.d.ts +3 -0
  705. package/ts3.4/es/api/form/PDFSignature.d.ts +3 -0
  706. package/ts3.4/es/api/form/PDFTextField.d.ts +3 -0
  707. package/ts3.4/es/api/objects.d.ts +61 -0
  708. package/ts3.4/es/api/operators.d.ts +28 -24
  709. package/ts3.4/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  710. package/ts3.4/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
  711. package/ts3.4/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  712. package/ts3.4/es/core/PDFContext.d.ts +1 -1
  713. package/ts3.4/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  714. package/ts3.4/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
  715. package/ts3.4/es/core/acroform/PDFAcroField.d.ts +3 -0
  716. package/ts3.4/es/core/acroform/PDFAcroForm.d.ts +3 -0
  717. package/ts3.4/es/core/acroform/PDFAcroListBox.d.ts +3 -0
  718. package/ts3.4/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  719. package/ts3.4/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
  720. package/ts3.4/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  721. package/ts3.4/es/core/acroform/PDFAcroSignature.d.ts +3 -0
  722. package/ts3.4/es/core/acroform/PDFAcroText.d.ts +3 -0
  723. package/ts3.4/es/core/crypto.d.ts +3 -0
  724. package/ts3.4/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
  725. package/ts3.4/es/core/objects/PDFArray.d.ts +3 -0
  726. package/ts3.4/es/core/objects/PDFBool.d.ts +3 -0
  727. package/ts3.4/es/core/objects/PDFDict.d.ts +3 -0
  728. package/ts3.4/es/core/objects/PDFHexString.d.ts +3 -0
  729. package/ts3.4/es/core/objects/PDFInvalidObject.d.ts +3 -0
  730. package/ts3.4/es/core/objects/PDFName.d.ts +3 -0
  731. package/ts3.4/es/core/objects/PDFNull.d.ts +3 -0
  732. package/ts3.4/es/core/objects/PDFNumber.d.ts +3 -0
  733. package/ts3.4/es/core/objects/PDFObject.d.ts +3 -0
  734. package/ts3.4/es/core/objects/PDFRawStream.d.ts +3 -0
  735. package/ts3.4/es/core/objects/PDFRef.d.ts +3 -0
  736. package/ts3.4/es/core/objects/PDFStream.d.ts +3 -0
  737. package/ts3.4/es/core/objects/PDFString.d.ts +3 -0
  738. package/ts3.4/es/core/structures/PDFCatalog.d.ts +3 -0
  739. package/ts3.4/es/core/structures/PDFContentStream.d.ts +3 -0
  740. package/ts3.4/es/core/structures/PDFObjectStream.d.ts +3 -0
  741. package/ts3.4/es/core/structures/PDFPageLeaf.d.ts +3 -0
  742. package/ts3.4/es/core/structures/PDFPageTree.d.ts +3 -0
  743. package/ts3.4/es/core/writers/PDFStreamWriter.d.ts +3 -0
  744. package/ts3.4/es/core/writers/PDFWriter.d.ts +3 -0
  745. package/ts3.4/es/utils/elements/Arc.d.ts +3 -0
  746. package/ts3.4/es/utils/elements/Circle.d.ts +3 -0
  747. package/ts3.4/es/utils/elements/Ellipse.d.ts +3 -0
  748. package/ts3.4/es/utils/elements/GraphElement.d.ts +2 -0
  749. package/ts3.4/es/utils/elements/Line.d.ts +3 -0
  750. package/ts3.4/es/utils/elements/Plot.d.ts +3 -0
  751. package/ts3.4/es/utils/elements/Point.d.ts +3 -0
  752. package/ts3.4/es/utils/elements/Rectangle.d.ts +3 -0
  753. package/ts3.4/es/utils/elements/Segment.d.ts +3 -0
@@ -1,78 +1,75 @@
1
- import Arc from './elements/Arc.js';
2
- import Circle from './elements/Circle.js';
3
- import Ellipse from './elements/Ellipse.js';
4
1
  import Line from './elements/Line.js';
5
2
  import Plot from './elements/Plot.js';
6
3
  import Point from './elements/Point.js';
7
- import Rectangle from './elements/Rectangle.js';
8
4
  import Segment from './elements/Segment.js';
9
5
  import { distance, isColinear, isEqual, norm, orthogonal, times, unitVector, vector, rotate, } from './maths.js';
6
+ import { isPDFInstance, PDFClasses } from '../api/objects.js';
10
7
  export const intersections = (A, B) => {
11
- if (A instanceof Point || B instanceof Point)
8
+ if (isPDFInstance(A, PDFClasses.Point) || isPDFInstance(B, PDFClasses.Point))
12
9
  return [];
13
10
  else if (A instanceof Text || B instanceof Text)
14
11
  return [];
15
12
  else if (A instanceof Image || B instanceof Image)
16
13
  return [];
17
14
  // TODO: calculate the coords of the intersection: https://www.emathzone.com/tutorials/geometry/intersection-of-line-and-ellipse.html
18
- else if (A instanceof Line)
15
+ else if (isPDFInstance(A, PDFClasses.Line))
19
16
  return intersectionsLine(A, B);
20
- else if (A instanceof Segment) {
17
+ else if (isPDFInstance(A, PDFClasses.Segment)) {
21
18
  return intersectionsLine(A.getLine(), B).filter((P) => A.includes(new Point(P)));
22
19
  }
23
- else if (A instanceof Circle)
20
+ else if (isPDFInstance(A, PDFClasses.Circle))
24
21
  return intersectionsCircle(A, B);
25
- else if (A instanceof Arc) {
22
+ else if (isPDFInstance(A, PDFClasses.Arc)) {
26
23
  return intersectionsCircle(A.getCircle(), B).filter((P) => A.includes(new Point(P)));
27
24
  }
28
- else if (A instanceof Plot)
25
+ else if (isPDFInstance(A, PDFClasses.Plot))
29
26
  return intersectionsPlot(A, B);
30
- else if (A instanceof Rectangle)
27
+ else if (isPDFInstance(A, PDFClasses.Rectangle))
31
28
  return intersectionsRectangle(A, B);
32
- else if (A instanceof Ellipse)
29
+ else if (isPDFInstance(A, PDFClasses.Ellipse))
33
30
  return intersectionsEllipse(A, B);
34
31
  return A;
35
32
  };
36
33
  export const intersection = (A, B) => intersections(A, B)[0];
37
34
  const intersectionsLine = (A, B) => {
38
- if (B instanceof Line)
35
+ if (isPDFInstance(B, PDFClasses.Line))
39
36
  return intersectionLine(A, B);
40
- else if (B instanceof Segment) {
37
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
41
38
  return intersectionLine(A, B.getLine()).filter((P) => B.includes(new Point(P)));
42
39
  }
43
- else if (B instanceof Circle)
40
+ else if (isPDFInstance(B, PDFClasses.Circle))
44
41
  return intersectionCircleLine(B, A);
45
- else if (B instanceof Arc) {
42
+ else if (isPDFInstance(B, PDFClasses.Arc)) {
46
43
  return intersectionsCircle(B.getCircle(), A).filter((P) => B.includes(new Point(P)));
47
44
  }
48
- else if (B instanceof Plot)
45
+ else if (isPDFInstance(B, PDFClasses.Plot))
49
46
  return intersectionsPlot(B, A);
50
- else if (B instanceof Rectangle)
47
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
51
48
  return intersectionsRectangle(B, A);
52
- else if (B instanceof Ellipse)
49
+ else if (isPDFInstance(B, PDFClasses.Ellipse))
53
50
  return intersectionsEllipse(B, A);
54
51
  return B;
55
52
  };
56
53
  const intersectionsEllipse = (A, B) => {
57
- if (B instanceof Line)
54
+ if (isPDFInstance(B, PDFClasses.Line))
58
55
  return intersectionsLineAndEllipse(A, B);
59
- else if (B instanceof Segment) {
56
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
60
57
  return intersectionsEllipse(A, B.getLine()).filter((P) => B.includes(new Point(P)));
61
58
  }
62
59
  // TODO:
63
- // else if (B instanceof Circle) return intersectionEllipseCircle(B, A)
64
- else if (B instanceof Circle)
60
+ // else if (isPDFInstnace(B, PDFClasses.Circle)) return intersectionEllipseCircle(B as Circle, A);
61
+ else if (isPDFInstance(B, PDFClasses.Circle))
65
62
  return [];
66
63
  // TODO:
67
- // else if (B instanceof Ellipse) return intersectionEllipseEllipse(B, A)
68
- else if (B instanceof Ellipse)
64
+ // else if (isPDFInstance(B, PDFClasses.Ellipse)) return intersectionEllipseEllipse(B as Ellipse, A);
65
+ else if (isPDFInstance(B, PDFClasses.Ellipse))
69
66
  return [];
70
- else if (B instanceof Arc) {
67
+ else if (isPDFInstance(B, PDFClasses.Arc)) {
71
68
  return intersectionsEllipse(A, B.getCircle()).filter((P) => B.includes(new Point(P)));
72
69
  }
73
- else if (B instanceof Plot)
70
+ else if (isPDFInstance(B, PDFClasses.Plot))
74
71
  return intersectionsPlot(B, A);
75
- else if (B instanceof Rectangle)
72
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
76
73
  return intersectionsRectangle(B, A);
77
74
  return B;
78
75
  };
@@ -213,21 +210,21 @@ export const intersectionCircle = (A, B) => {
213
210
  }
214
211
  };
215
212
  const intersectionsCircle = (A, B) => {
216
- if (B instanceof Circle)
213
+ if (isPDFInstance(B, PDFClasses.Circle))
217
214
  return intersectionCircle(A, B);
218
- else if (B instanceof Line)
215
+ else if (isPDFInstance(B, PDFClasses.Line))
219
216
  return intersectionCircleLine(A, B);
220
- else if (B instanceof Segment) {
217
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
221
218
  return intersectionCircleLine(A, B.getLine()).filter((P) => B.includes(new Point(P)));
222
219
  }
223
- else if (B instanceof Arc) {
220
+ else if (isPDFInstance(B, PDFClasses.Arc)) {
224
221
  return intersectionCircle(A, B.getCircle()).filter((P) => B.includes(new Point(P)));
225
222
  }
226
- else if (B instanceof Plot)
223
+ else if (isPDFInstance(B, PDFClasses.Plot))
227
224
  return intersectionsPlot(B, A);
228
- else if (B instanceof Rectangle)
225
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
229
226
  return intersectionsRectangle(B, A);
230
- else if (B instanceof Ellipse)
227
+ else if (isPDFInstance(B, PDFClasses.Ellipse))
231
228
  return intersectionsEllipse(B, A);
232
229
  return B;
233
230
  };
@@ -1 +1 @@
1
- {"version":3,"file":"intersections.js","sourceRoot":"","sources":["../../src/utils/intersections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intersections.js","sourceRoot":"","sources":["../../src/utils/intersections.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adnsistemas/pdf-lib",
3
- "version": "2.8.1",
3
+ "version": "2.9.1",
4
4
  "description": "Create and modify PDF files with JavaScript",
5
5
  "author": "Andrew Dillon <andrew.dillon.j@gmail.com>",
6
6
  "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
@@ -81,6 +81,7 @@ import PDFSvg from './PDFSvg';
81
81
  import PDFSecurity, { SecurityOptions } from '../core/security/PDFSecurity';
82
82
  import { IncrementalDocumentSnapshot } from './snapshot';
83
83
  import type { DocumentSnapshot } from './snapshot';
84
+ import { isPDFInstance, PDFClasses } from './objects';
84
85
 
85
86
  export type BasePDFAttachment = {
86
87
  name: string;
@@ -247,6 +248,11 @@ export default class PDFDocument {
247
248
 
248
249
  return new PDFDocument(context, false, updateMetadata);
249
250
  }
251
+ static className = () => PDFClasses.PDFDocument;
252
+
253
+ myClass(): PDFClasses {
254
+ return PDFClasses.PDFDocument;
255
+ }
250
256
 
251
257
  /** The low-level context of this document. */
252
258
  readonly context: PDFContext;
@@ -1036,52 +1042,50 @@ export default class PDFDocument {
1036
1042
  const rawAttachments = this.getRawAttachments();
1037
1043
  return rawAttachments.flatMap(({ fileName, fileSpec, specRef }) => {
1038
1044
  const efDict = fileSpec.lookup(PDFName.of('EF'));
1039
- if (!(efDict instanceof PDFDict)) return [];
1045
+ if (!isPDFInstance(efDict, PDFClasses.PDFDict)) return [];
1040
1046
 
1041
- const stream = efDict.lookup(PDFName.of('F'));
1042
- if (!(stream instanceof PDFStream)) return [];
1047
+ const stream = (efDict as PDFDict).lookup(PDFName.of('F'));
1048
+ if (!isPDFInstance(stream, PDFClasses.PDFStream)) return [];
1043
1049
 
1044
1050
  const afr = fileSpec.lookup(PDFName.of('AFRelationship'));
1045
- const afRelationship =
1046
- afr instanceof PDFName
1047
- ? afr.toString().slice(1) // Remove leading slash
1048
- : afr instanceof PDFString
1049
- ? afr.decodeText()
1050
- : undefined;
1051
-
1052
- const embeddedFileDict = stream.dict;
1051
+ const afRelationship = isPDFInstance(afr, PDFClasses.PDFName)
1052
+ ? (afr as PDFName).toString().slice(1) // Remove leading slash
1053
+ : isPDFInstance(afr, PDFClasses.PDFString)
1054
+ ? (afr as PDFString).decodeText()
1055
+ : undefined;
1056
+
1057
+ const embeddedFileDict = (stream as PDFStream).dict;
1053
1058
  const subtype = embeddedFileDict.lookup(PDFName.of('Subtype'));
1054
1059
 
1055
- const mimeType =
1056
- subtype instanceof PDFName
1057
- ? subtype.toString().slice(1)
1058
- : subtype instanceof PDFString
1059
- ? subtype.decodeText()
1060
- : undefined;
1060
+ const mimeType = isPDFInstance(subtype, PDFClasses.PDFName)
1061
+ ? (subtype as PDFName).toString().slice(1)
1062
+ : isPDFInstance(subtype, PDFClasses.PDFString)
1063
+ ? (subtype as PDFString).decodeText()
1064
+ : undefined;
1061
1065
 
1062
1066
  const paramsDict = embeddedFileDict.lookup(PDFName.of('Params'), PDFDict);
1063
1067
 
1064
1068
  let creationDate: Date | undefined;
1065
1069
  let modificationDate: Date | undefined;
1066
1070
 
1067
- if (paramsDict instanceof PDFDict) {
1071
+ if (isPDFInstance(paramsDict, PDFClasses.PDFDict)) {
1068
1072
  const creationDateRaw = paramsDict.lookup(PDFName.of('CreationDate'));
1069
1073
  const modDateRaw = paramsDict.lookup(PDFName.of('ModDate'));
1070
1074
 
1071
- if (creationDateRaw instanceof PDFString) {
1072
- creationDate = creationDateRaw.decodeDate();
1075
+ if (isPDFInstance(creationDateRaw, PDFClasses.PDFString)) {
1076
+ creationDate = (creationDateRaw as PDFString).decodeDate();
1073
1077
  }
1074
1078
 
1075
- if (modDateRaw instanceof PDFString) {
1076
- modificationDate = modDateRaw.decodeDate();
1079
+ if (isPDFInstance(modDateRaw, PDFClasses.PDFString)) {
1080
+ modificationDate = (modDateRaw as PDFString).decodeDate();
1077
1081
  }
1078
1082
  }
1079
1083
 
1080
1084
  const descRaw = fileSpec.lookup(PDFName.of('Desc'));
1081
1085
  let description: string | undefined;
1082
1086
 
1083
- if (descRaw instanceof PDFHexString) {
1084
- description = descRaw.decodeText();
1087
+ if (isPDFInstance(descRaw, PDFClasses.PDFHexString)) {
1088
+ description = (descRaw as PDFHexString).decodeText();
1085
1089
  }
1086
1090
 
1087
1091
  return [
@@ -1095,7 +1099,7 @@ export default class PDFDocument {
1095
1099
  description,
1096
1100
  creationDate,
1097
1101
  modificationDate,
1098
- embeddedFileDict: efDict,
1102
+ embeddedFileDict: efDict as PDFDict,
1099
1103
  specRef,
1100
1104
  },
1101
1105
  ];
@@ -1416,10 +1420,11 @@ export default class PDFDocument {
1416
1420
  ]);
1417
1421
  assertIs(indices, 'indices', [Array]);
1418
1422
 
1419
- const srcDoc =
1420
- pdf instanceof PDFDocument ? pdf : await PDFDocument.load(pdf);
1423
+ const srcDoc = isPDFInstance(pdf, PDFClasses.PDFDocument)
1424
+ ? pdf
1425
+ : await PDFDocument.load(pdf as string | Uint8Array | ArrayBuffer);
1421
1426
 
1422
- const srcPages = pluckIndices(srcDoc.getPages(), indices);
1427
+ const srcPages = pluckIndices((srcDoc as PDFDocument).getPages(), indices);
1423
1428
 
1424
1429
  return this.embedPages(srcPages);
1425
1430
  }
@@ -1732,24 +1737,23 @@ export default class PDFDocument {
1732
1737
  const upind = this.context.xrefs.length - lastUpdateMinusX - 1;
1733
1738
  const entries = this.context.listXrefEntries(upind);
1734
1739
  if (!entries.length) return [];
1735
- const changed = new Map<PDFRef, PDFObjectVersions>();
1740
+ const changed = new Map<string, PDFObjectVersions>();
1736
1741
  for (const entry of entries) {
1737
1742
  const ref = entry.ref;
1738
- changed.set(ref, {
1743
+ changed.set(ref.toString(), {
1739
1744
  ref,
1740
1745
  actual: entry.deleted ? undefined : this.context.lookup(ref),
1741
1746
  previous: this.context.getObjectVersions(ref),
1742
1747
  });
1743
1748
  }
1744
1749
  // if not the las update, then check objects later modified and adjust PDFObjectVersions accordingly
1745
- if (!lastUpdateMinusX)
1746
- return Array.from(changed.entries()).map((value) => value[1]);
1750
+ if (!lastUpdateMinusX) return Array.from(changed.values());
1747
1751
  while (lastUpdateMinusX) {
1748
1752
  lastUpdateMinusX -= 1;
1749
1753
  const upind = this.context.xrefs.length - lastUpdateMinusX - 1;
1750
1754
  const nentries = this.context.listXrefEntries(upind);
1751
1755
  for (const nentry of nentries) {
1752
- const oce = changed.get(nentry.ref);
1756
+ const oce = changed.get(nentry.ref.toString());
1753
1757
  if (oce && oce.actual) {
1754
1758
  oce.actual = oce.previous[0];
1755
1759
  oce.previous = oce.previous.slice(1);
@@ -1757,9 +1761,9 @@ export default class PDFDocument {
1757
1761
  }
1758
1762
  }
1759
1763
  // if PDF has errors, it may happen to end with objects that has no current, nor previous versions
1760
- return Array.from(changed.entries())
1761
- .map((value) => value[1])
1762
- .filter((ov) => ov.actual || ov.previous.length);
1764
+ return Array.from(changed.values()).filter(
1765
+ (ov) => ov.actual || ov.previous.length,
1766
+ );
1763
1767
  }
1764
1768
 
1765
1769
  /**
@@ -1859,8 +1863,8 @@ export default class PDFDocument {
1859
1863
 
1860
1864
  private getInfoDict(): PDFDict {
1861
1865
  const existingInfo = this.context.lookup(this.context.trailerInfo.Info);
1862
- if (existingInfo instanceof PDFDict) {
1863
- return existingInfo;
1866
+ if (isPDFInstance(existingInfo, PDFClasses.PDFDict)) {
1867
+ return existingInfo as PDFDict;
1864
1868
  }
1865
1869
 
1866
1870
  const newInfo = this.context.obj({});
@@ -1877,11 +1881,11 @@ export default class PDFDocument {
1877
1881
  private computePages = (): PDFPage[] => {
1878
1882
  const pages: PDFPage[] = [];
1879
1883
  this.catalog.Pages().traverse((node, ref) => {
1880
- if (node instanceof PDFPageLeaf) {
1881
- let page = this.pageMap.get(node);
1884
+ if (isPDFInstance(node, PDFClasses.PDFPageLeaf)) {
1885
+ let page = this.pageMap.get(node as PDFPageLeaf);
1882
1886
  if (!page) {
1883
- page = PDFPage.of(node, ref, this);
1884
- this.pageMap.set(node, page);
1887
+ page = PDFPage.of(node as PDFPageLeaf, ref, this);
1888
+ this.pageMap.set(node as PDFPageLeaf, page);
1885
1889
  }
1886
1890
  pages.push(page);
1887
1891
  }
@@ -1900,8 +1904,8 @@ function assertIsLiteralOrHexString(
1900
1904
  pdfObject: PDFObject,
1901
1905
  ): asserts pdfObject is PDFHexString | PDFString {
1902
1906
  if (
1903
- !(pdfObject instanceof PDFHexString) &&
1904
- !(pdfObject instanceof PDFString)
1907
+ !isPDFInstance(pdfObject, PDFClasses.PDFHexString) &&
1908
+ !isPDFInstance(pdfObject, PDFClasses.PDFString)
1905
1909
  ) {
1906
1910
  throw new UnexpectedObjectTypeError([PDFHexString, PDFString], pdfObject);
1907
1911
  }
@@ -7,6 +7,7 @@ import {
7
7
  StandardFontEmbedder,
8
8
  } from '../core';
9
9
  import { assertIs, assertOrUndefined } from '../utils';
10
+ import { isPDFInstance, PDFClasses } from './objects';
10
11
 
11
12
  export type FontEmbedder = CustomFontEmbedder | StandardFontEmbedder;
12
13
 
@@ -127,10 +128,11 @@ export default class PDFFont implements Embeddable {
127
128
  * @returns The set of unicode code points supported by this font.
128
129
  */
129
130
  getCharacterSet(): number[] {
130
- if (this.embedder instanceof StandardFontEmbedder) {
131
- return this.embedder.encoding.supportedCodePoints;
131
+ if (isPDFInstance(this.embedder, PDFClasses.StandardFontEmbedder)) {
132
+ return (this.embedder as StandardFontEmbedder).encoding
133
+ .supportedCodePoints;
132
134
  } else {
133
- return this.embedder.font.characterSet;
135
+ return (this.embedder as CustomFontEmbedder).font.characterSet;
134
136
  }
135
137
  }
136
138
 
@@ -59,6 +59,7 @@ import {
59
59
  assertIsOneOfOrUndefined,
60
60
  } from '../utils';
61
61
  import { drawSvg } from './svg';
62
+ import { isPDFInstance, PDFClasses } from './objects';
62
63
 
63
64
  /**
64
65
  * Represents a single page of a [[PDFDocument]].
@@ -652,7 +653,8 @@ export default class PDFPage {
652
653
 
653
654
  for (let idx = 0; idx < annots.size(); idx++) {
654
655
  const annot = annots.lookup(idx);
655
- if (annot instanceof PDFDict) this.scaleAnnot(annot, x, y);
656
+ if (isPDFInstance(annot, PDFClasses.PDFDict))
657
+ this.scaleAnnot(annot as PDFDict, x, y);
656
658
  }
657
659
  }
658
660
 
@@ -1680,14 +1682,16 @@ export default class PDFPage {
1680
1682
  const selectors = ['RD', 'CL', 'Vertices', 'QuadPoints', 'L', 'Rect'];
1681
1683
  for (let idx = 0, len = selectors.length; idx < len; idx++) {
1682
1684
  const list = annot.lookup(PDFName.of(selectors[idx]));
1683
- if (list instanceof PDFArray) list.scalePDFNumbers(x, y);
1685
+ if (isPDFInstance(list, PDFClasses.PDFArray))
1686
+ (list as PDFArray).scalePDFNumbers(x, y);
1684
1687
  }
1685
1688
 
1686
1689
  const inkLists = annot.lookup(PDFName.of('InkList'));
1687
- if (inkLists instanceof PDFArray) {
1688
- for (let idx = 0, len = inkLists.size(); idx < len; idx++) {
1689
- const arr = inkLists.lookup(idx);
1690
- if (arr instanceof PDFArray) arr.scalePDFNumbers(x, y);
1690
+ if (isPDFInstance(inkLists, PDFClasses.PDFArray)) {
1691
+ for (let idx = 0, len = (inkLists as PDFArray).size(); idx < len; idx++) {
1692
+ const arr = (inkLists as PDFArray).lookup(idx);
1693
+ if (isPDFInstance(arr, PDFClasses.PDFArray))
1694
+ (arr as PDFArray).scalePDFNumbers(x, y);
1691
1695
  }
1692
1696
  }
1693
1697
  }
@@ -15,13 +15,9 @@ import PDFField, {
15
15
  import { rgb } from '../colors';
16
16
  import { degrees } from '../rotations';
17
17
 
18
- import {
19
- PDFRef,
20
- PDFStream,
21
- PDFAcroPushButton,
22
- PDFWidgetAnnotation,
23
- } from '../../core';
18
+ import { PDFRef, PDFAcroPushButton, PDFWidgetAnnotation } from '../../core';
24
19
  import { assertIs, assertOrUndefined, assertPositive } from '../../utils';
20
+ import { isPDFInstance, PDFClasses } from '../objects';
25
21
 
26
22
  /**
27
23
  * Represents a button field of a [[PDFForm]].
@@ -33,6 +29,10 @@ import { assertIs, assertOrUndefined, assertPositive } from '../../utils';
33
29
  * have a text label describing the action that they perform when clicked.
34
30
  */
35
31
  export default class PDFButton extends PDFField {
32
+ static className = () => PDFClasses.PDFButton;
33
+ myClass(): PDFClasses {
34
+ return PDFClasses.PDFButton;
35
+ }
36
36
  /**
37
37
  * > **NOTE:** You probably don't want to call this method directly. Instead,
38
38
  * > consider using the [[PDFForm.getButton]] method, which will create an
@@ -199,8 +199,10 @@ export default class PDFButton extends PDFField {
199
199
  const widgets = this.acroField.getWidgets();
200
200
  for (let idx = 0, len = widgets.length; idx < len; idx++) {
201
201
  const widget = widgets[idx];
202
- const hasAppearances =
203
- widget.getAppearances()?.normal instanceof PDFStream;
202
+ const hasAppearances = isPDFInstance(
203
+ widget.getAppearances()?.normal,
204
+ PDFClasses.PDFStream,
205
+ );
204
206
  if (!hasAppearances) return true;
205
207
  }
206
208
 
@@ -20,6 +20,7 @@ import {
20
20
  PDFWidgetAnnotation,
21
21
  } from '../../core';
22
22
  import { assertIs, assertOrUndefined } from '../../utils';
23
+ import { isPDFInstance, PDFClasses } from '../objects';
23
24
 
24
25
  /**
25
26
  * Represents a check box field of a [[PDFForm]].
@@ -31,6 +32,10 @@ import { assertIs, assertOrUndefined } from '../../utils';
31
32
  * square in shape and display a check mark when they are in the `on` state.
32
33
  */
33
34
  export default class PDFCheckBox extends PDFField {
35
+ static className = () => PDFClasses.PDFCheckBox;
36
+ myClass(): PDFClasses {
37
+ return PDFClasses.PDFCheckBox;
38
+ }
34
39
  /**
35
40
  * > **NOTE:** You probably don't want to call this method directly. Instead,
36
41
  * > consider using the [[PDFForm.getCheckBox]] method, which will create an
@@ -201,8 +206,8 @@ export default class PDFCheckBox extends PDFField {
201
206
  const state = widget.getAppearanceState();
202
207
  const normal = widget.getAppearances()?.normal;
203
208
 
204
- if (!(normal instanceof PDFDict)) return true;
205
- if (state && !normal.has(state)) return true;
209
+ if (!isPDFInstance(normal, PDFClasses.PDFDict)) return true;
210
+ if (state && !(normal as PDFDict).has(state)) return true;
206
211
  }
207
212
 
208
213
  return false;
@@ -17,12 +17,12 @@ import {
17
17
  PDFHexString,
18
18
  PDFRef,
19
19
  PDFString,
20
- PDFStream,
21
20
  PDFWidgetAnnotation,
22
21
  PDFAcroComboBox,
23
22
  AcroChoiceFlags,
24
23
  } from '../../core';
25
24
  import { assertIs, assertOrUndefined, assertPositive } from '../../utils';
25
+ import { isPDFInstance, PDFClasses } from '../objects';
26
26
 
27
27
  /**
28
28
  * Represents a dropdown field of a [[PDFForm]].
@@ -37,6 +37,10 @@ import { assertIs, assertOrUndefined, assertPositive } from '../../utils';
37
37
  * choose an option from the list (see [[PDFDropdown.isEditable]]).
38
38
  */
39
39
  export default class PDFDropdown extends PDFField {
40
+ static className = () => PDFClasses.PDFDropdown;
41
+ myClass(): PDFClasses {
42
+ return PDFClasses.PDFDropdown;
43
+ }
40
44
  /**
41
45
  * > **NOTE:** You probably don't want to call this method directly. Instead,
42
46
  * > consider using the [[PDFForm.getDropdown]] method, which will create an
@@ -579,8 +583,10 @@ export default class PDFDropdown extends PDFField {
579
583
  const widgets = this.acroField.getWidgets();
580
584
  for (let idx = 0, len = widgets.length; idx < len; idx++) {
581
585
  const widget = widgets[idx];
582
- const hasAppearances =
583
- widget.getAppearances()?.normal instanceof PDFStream;
586
+ const hasAppearances = isPDFInstance(
587
+ widget.getAppearances()?.normal,
588
+ PDFClasses.PDFStream,
589
+ );
584
590
  if (!hasAppearances) return true;
585
591
  }
586
592
 
@@ -26,6 +26,7 @@ import { assertIs, assertMultiple, assertOrUndefined } from '../../utils';
26
26
  import { ImageAlignment } from '../image';
27
27
  import PDFImage from '../PDFImage';
28
28
  import { drawImage, rotateInPlace } from '../operations';
29
+ import { PDFClasses } from '../objects';
29
30
 
30
31
  export interface FieldAppearanceOptions {
31
32
  x?: number;
@@ -82,6 +83,10 @@ export const assertFieldAppearanceOptions = (
82
83
  * to be rendered.
83
84
  */
84
85
  export default class PDFField {
86
+ static className = () => PDFClasses.PDFField;
87
+ myClass(): PDFClasses {
88
+ return PDFClasses.PDFField;
89
+ }
85
90
  /** The low-level PDFAcroTerminal wrapped by this field. */
86
91
  readonly acroField: PDFAcroTerminal;
87
92