@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,3 +1,4 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import { Size } from '../../types';
2
3
  import {
3
4
  angle,
@@ -15,6 +16,10 @@ import Point from './Point';
15
16
  import Segment from './Segment';
16
17
 
17
18
  export default class Ellipse extends GraphElement {
19
+ static className = () => PDFClasses.Ellipse;
20
+ myClass(): PDFClasses {
21
+ return PDFClasses.Ellipse;
22
+ }
18
23
  A: Point;
19
24
  B: Point;
20
25
  C: Point;
@@ -62,13 +67,13 @@ export default class Ellipse extends GraphElement {
62
67
  }
63
68
 
64
69
  isEqual(element: GraphElement): boolean {
65
- if (!(element instanceof Ellipse)) return false;
70
+ if (!isPDFInstance(element, PDFClasses.Ellipse)) return false;
66
71
  const a = this.a();
67
72
  const b = this.b();
68
73
  const rotation = this.rotation();
69
- const eltA = element.a();
70
- const eltB = element.b();
71
- const eltRotation = element.rotation();
74
+ const eltA = (element as Ellipse).a();
75
+ const eltB = (element as Ellipse).b();
76
+ const eltRotation = (element as Ellipse).rotation();
72
77
  // If the main axis is the same on both ellipse
73
78
  if (eltA < eltB === a < b) {
74
79
  // The rotation is equivalent module PI as the element is symetrical
@@ -1,8 +1,11 @@
1
+ import { PDFClasses } from '../../api/objects';
1
2
  import { distance } from '../maths';
2
3
 
3
4
  import Point from './Point';
4
5
 
5
6
  export default abstract class GraphElement {
7
+ abstract myClass(): PDFClasses;
8
+
6
9
  abstract isEqual(element: GraphElement): boolean;
7
10
 
8
11
  abstract orthoProjection(P: Point): Point;
@@ -1,3 +1,4 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import { Coordinates } from '../../types';
2
3
  import { intersectionLine } from '../intersections';
3
4
  import { isColinear, isEqual, orthogonal, vector } from '../maths';
@@ -6,6 +7,10 @@ import GraphElement from './GraphElement';
6
7
  import Point from './Point';
7
8
 
8
9
  export default class Line extends GraphElement {
10
+ static className = () => PDFClasses.Line;
11
+ myClass(): PDFClasses {
12
+ return PDFClasses.Line;
13
+ }
9
14
  origin(): Point {
10
15
  return this.A;
11
16
  }
@@ -46,12 +51,15 @@ export default class Line extends GraphElement {
46
51
  isEqual(element: GraphElement): boolean {
47
52
  const vect = this.dirVect();
48
53
  return (
49
- element instanceof Line &&
50
- isColinear(vect, element.dirVect()) &&
54
+ isPDFInstance(element, PDFClasses.Line) &&
55
+ isColinear(vect, (element as Line).dirVect()) &&
51
56
  (isEqual(vect.x, 0)
52
57
  ? // We need to take care of the case of the vertical line
53
- isEqual(this.origin().toCoords().x, element.origin().toCoords().x)
54
- : isEqual(this.b(), element.b()))
58
+ isEqual(
59
+ this.origin().toCoords().x,
60
+ (element as Line).origin().toCoords().x,
61
+ )
62
+ : isEqual(this.b(), (element as Line).b()))
55
63
  );
56
64
  }
57
65
 
@@ -1,3 +1,4 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import { Coordinates } from '../../types';
2
3
  import { plus } from '../maths';
3
4
 
@@ -5,6 +6,10 @@ import GraphElement from './GraphElement';
5
6
  import Point from './Point';
6
7
  import Segment from './Segment';
7
8
  export default class Plot extends GraphElement {
9
+ static className = () => PDFClasses.Plot;
10
+ myClass(): PDFClasses {
11
+ return PDFClasses.Plot;
12
+ }
8
13
  points: Coordinates[];
9
14
 
10
15
  constructor(points: Coordinates[] = []) {
@@ -21,9 +26,11 @@ export default class Plot extends GraphElement {
21
26
  }
22
27
 
23
28
  isEqual(element: GraphElement): boolean {
24
- if (!(element instanceof Plot)) return false;
29
+ if (!isPDFInstance(element, PDFClasses.Plot)) return false;
25
30
  const points = this.getPoints().map((coord) => new Point(coord));
26
- const points2 = element.getPoints().map((coord) => new Point(coord));
31
+ const points2 = (element as Plot)
32
+ .getPoints()
33
+ .map((coord) => new Point(coord));
27
34
  return (
28
35
  points.every((point, i) => point.isEqual(points2[i])) ||
29
36
  points.reverse().every((point, i) => point.isEqual(points2[i]))
@@ -1,9 +1,14 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import type { Coordinates } from '../../types';
2
3
 
3
4
  import { isEqual, plus } from '../maths';
4
5
  import GraphElement from './GraphElement';
5
6
 
6
7
  export default class Point extends GraphElement {
8
+ static className = () => PDFClasses.Point;
9
+ myClass(): PDFClasses {
10
+ return PDFClasses.Point;
11
+ }
7
12
  static type = 'PointFixed';
8
13
 
9
14
  x: number;
@@ -20,9 +25,9 @@ export default class Point extends GraphElement {
20
25
  }
21
26
 
22
27
  isEqual(element: GraphElement): boolean {
23
- if (!(element instanceof Point)) return false;
28
+ if (!isPDFInstance(element, PDFClasses.Point)) return false;
24
29
  const A = this.toCoords();
25
- const B = element.toCoords();
30
+ const B = (element as Point).toCoords();
26
31
  return isEqual(A.x, B.x) && isEqual(A.y, B.y);
27
32
  }
28
33
 
@@ -1,8 +1,13 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import GraphElement from './GraphElement';
2
3
  import Point from './Point';
3
4
  import Segment from './Segment';
4
5
 
5
6
  export default class Rectangle extends GraphElement {
7
+ static className = () => PDFClasses.Rectangle;
8
+ myClass(): PDFClasses {
9
+ return PDFClasses.Rectangle;
10
+ }
6
11
  static type = 'Rectangle';
7
12
  start: Point;
8
13
  end: Point;
@@ -48,9 +53,9 @@ export default class Rectangle extends GraphElement {
48
53
 
49
54
  isEqual(element: GraphElement): boolean {
50
55
  return (
51
- element instanceof Rectangle &&
52
- this.getStart().isEqual(element.getStart()) &&
53
- this.getEnd().isEqual(element.getEnd())
56
+ isPDFInstance(element, PDFClasses.Rectangle) &&
57
+ this.getStart().isEqual((element as Rectangle).getStart()) &&
58
+ this.getEnd().isEqual((element as Rectangle).getEnd())
54
59
  );
55
60
  }
56
61
 
@@ -1,3 +1,4 @@
1
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
1
2
  import {
2
3
  distance,
3
4
  isColinear,
@@ -13,6 +14,10 @@ import Line from './Line';
13
14
  import Point from './Point';
14
15
 
15
16
  export default class Segment extends GraphElement {
17
+ static className = () => PDFClasses.Segment;
18
+ myClass(): PDFClasses {
19
+ return PDFClasses.Segment;
20
+ }
16
21
  static type = 'Segment';
17
22
  A: Point;
18
23
  B: Point;
@@ -39,15 +44,14 @@ export default class Segment extends GraphElement {
39
44
  }
40
45
 
41
46
  isEqual(element: GraphElement): boolean {
42
- if (!(element instanceof Segment)) return false;
47
+ if (!isPDFInstance(element, PDFClasses.Segment)) return false;
43
48
  const o = this.origin();
44
49
  const dest = this.destination();
45
- const oE = element.origin();
46
- const destE = element.destination();
50
+ const oE = (element as Segment).origin();
51
+ const destE = (element as Segment).destination();
47
52
  return (
48
- element instanceof Segment &&
49
- ((o.isEqual(oE) && dest.isEqual(destE)) ||
50
- (o.isEqual(destE) && dest.isEqual(oE)))
53
+ (o.isEqual(oE) && dest.isEqual(destE)) ||
54
+ (o.isEqual(destE) && dest.isEqual(oE))
51
55
  );
52
56
  }
53
57
 
@@ -18,29 +18,47 @@ import {
18
18
  vector,
19
19
  rotate,
20
20
  } from './maths';
21
+ import { isPDFInstance, PDFClasses } from '../api/objects';
21
22
 
22
23
  export const intersections = (
23
24
  A: GraphicElement,
24
25
  B: GraphicElement,
25
26
  ): Coordinates[] => {
26
- if (A instanceof Point || B instanceof Point) return [];
27
+ if (isPDFInstance(A, PDFClasses.Point) || isPDFInstance(B, PDFClasses.Point))
28
+ return [];
27
29
  else if (A instanceof Text || B instanceof Text) return [];
28
30
  else if (A instanceof Image || B instanceof Image) return [];
29
31
  // TODO: calculate the coords of the intersection: https://www.emathzone.com/tutorials/geometry/intersection-of-line-and-ellipse.html
30
- else if (A instanceof Line) return intersectionsLine(A, B);
31
- else if (A instanceof Segment) {
32
- return intersectionsLine(A.getLine(), B).filter((P) =>
33
- A.includes(new Point(P)),
32
+ else if (isPDFInstance(A, PDFClasses.Line))
33
+ return intersectionsLine(
34
+ A as Line,
35
+ B as Arc | Circle | Ellipse | Line | Plot | Rectangle | Segment,
34
36
  );
35
- } else if (A instanceof Circle) return intersectionsCircle(A, B);
36
- else if (A instanceof Arc) {
37
- return intersectionsCircle(A.getCircle(), B).filter((P) =>
38
- A.includes(new Point(P)),
37
+ else if (isPDFInstance(A, PDFClasses.Segment)) {
38
+ return intersectionsLine(
39
+ (A as Segment).getLine(),
40
+ B as Arc | Circle | Ellipse | Line | Plot | Rectangle | Segment,
41
+ ).filter((P) => (A as Segment).includes(new Point(P)));
42
+ } else if (isPDFInstance(A, PDFClasses.Circle))
43
+ return intersectionsCircle(
44
+ A as Circle,
45
+ B as Arc | Circle | Ellipse | Line | Plot | Rectangle | Segment,
39
46
  );
40
- } else if (A instanceof Plot) return intersectionsPlot(A, B);
41
- else if (A instanceof Rectangle) return intersectionsRectangle(A, B);
42
- else if (A instanceof Ellipse) return intersectionsEllipse(A, B);
43
- return A;
47
+ else if (isPDFInstance(A, PDFClasses.Arc)) {
48
+ return intersectionsCircle(
49
+ (A as Arc).getCircle(),
50
+ B as Arc | Circle | Ellipse | Line | Plot | Rectangle | Segment,
51
+ ).filter((P) => (A as Arc).includes(new Point(P)));
52
+ } else if (isPDFInstance(A, PDFClasses.Plot))
53
+ return intersectionsPlot(A as Plot, B);
54
+ else if (isPDFInstance(A, PDFClasses.Rectangle))
55
+ return intersectionsRectangle(A as Rectangle, B);
56
+ else if (isPDFInstance(A, PDFClasses.Ellipse))
57
+ return intersectionsEllipse(
58
+ A as Ellipse,
59
+ B as Arc | Circle | Ellipse | Line | Plot | Rectangle | Segment,
60
+ );
61
+ return A as never;
44
62
  };
45
63
 
46
64
  export const intersection = (
@@ -52,45 +70,52 @@ const intersectionsLine = (
52
70
  A: Line,
53
71
  B: Exclude<GraphicElement, Text | Point>,
54
72
  ): Coordinates[] => {
55
- if (B instanceof Line) return intersectionLine(A, B);
56
- else if (B instanceof Segment) {
57
- return intersectionLine(A, B.getLine()).filter((P) =>
58
- B.includes(new Point(P)),
73
+ if (isPDFInstance(B, PDFClasses.Line)) return intersectionLine(A, B as Line);
74
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
75
+ return intersectionLine(A, (B as Segment).getLine()).filter((P) =>
76
+ (B as Segment).includes(new Point(P)),
59
77
  );
60
- } else if (B instanceof Circle) return intersectionCircleLine(B, A);
61
- else if (B instanceof Arc) {
62
- return intersectionsCircle(B.getCircle(), A).filter((P) =>
63
- B.includes(new Point(P)),
78
+ } else if (isPDFInstance(B, PDFClasses.Circle))
79
+ return intersectionCircleLine(B as Circle, A);
80
+ else if (isPDFInstance(B, PDFClasses.Arc)) {
81
+ return intersectionsCircle((B as Arc).getCircle(), A).filter((P) =>
82
+ (B as Arc).includes(new Point(P)),
64
83
  );
65
- } else if (B instanceof Plot) return intersectionsPlot(B, A);
66
- else if (B instanceof Rectangle) return intersectionsRectangle(B, A);
67
- else if (B instanceof Ellipse) return intersectionsEllipse(B, A);
68
- return B;
84
+ } else if (isPDFInstance(B, PDFClasses.Plot))
85
+ return intersectionsPlot(B as Plot, A);
86
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
87
+ return intersectionsRectangle(B as Rectangle, A);
88
+ else if (isPDFInstance(B, PDFClasses.Ellipse))
89
+ return intersectionsEllipse(B as Ellipse, A);
90
+ return B as never;
69
91
  };
70
92
 
71
93
  const intersectionsEllipse = (
72
94
  A: Ellipse,
73
95
  B: Exclude<GraphicElement, Text | Point>,
74
96
  ): Coordinates[] => {
75
- if (B instanceof Line) return intersectionsLineAndEllipse(A, B);
76
- else if (B instanceof Segment) {
77
- return intersectionsEllipse(A, B.getLine()).filter((P) =>
78
- B.includes(new Point(P)),
97
+ if (isPDFInstance(B, PDFClasses.Line))
98
+ return intersectionsLineAndEllipse(A, B as Line);
99
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
100
+ return intersectionsEllipse(A, (B as Segment).getLine()).filter((P) =>
101
+ (B as Segment).includes(new Point(P)),
79
102
  );
80
103
  }
81
104
  // TODO:
82
- // else if (B instanceof Circle) return intersectionEllipseCircle(B, A)
83
- else if (B instanceof Circle) return [];
105
+ // else if (isPDFInstnace(B, PDFClasses.Circle)) return intersectionEllipseCircle(B as Circle, A);
106
+ else if (isPDFInstance(B, PDFClasses.Circle)) return [];
84
107
  // TODO:
85
- // else if (B instanceof Ellipse) return intersectionEllipseEllipse(B, A)
86
- else if (B instanceof Ellipse) return [];
87
- else if (B instanceof Arc) {
88
- return intersectionsEllipse(A, B.getCircle()).filter((P) =>
89
- B.includes(new Point(P)),
108
+ // else if (isPDFInstance(B, PDFClasses.Ellipse)) return intersectionEllipseEllipse(B as Ellipse, A);
109
+ else if (isPDFInstance(B, PDFClasses.Ellipse)) return [];
110
+ else if (isPDFInstance(B, PDFClasses.Arc)) {
111
+ return intersectionsEllipse(A, (B as Arc).getCircle()).filter((P) =>
112
+ (B as Arc).includes(new Point(P)),
90
113
  );
91
- } else if (B instanceof Plot) return intersectionsPlot(B, A);
92
- else if (B instanceof Rectangle) return intersectionsRectangle(B, A);
93
- return B;
114
+ } else if (isPDFInstance(B, PDFClasses.Plot))
115
+ return intersectionsPlot(B as Plot, A);
116
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
117
+ return intersectionsRectangle(B as Rectangle, A);
118
+ return B as never;
94
119
  };
95
120
 
96
121
  const intersectionsLineAndEllipse = (A: Ellipse, B: Line): Coordinates[] => {
@@ -253,20 +278,25 @@ const intersectionsCircle = (
253
278
  A: Circle,
254
279
  B: Exclude<GraphicElement, Text | Point>,
255
280
  ): Coordinates[] => {
256
- if (B instanceof Circle) return intersectionCircle(A, B);
257
- else if (B instanceof Line) return intersectionCircleLine(A, B);
258
- else if (B instanceof Segment) {
259
- return intersectionCircleLine(A, B.getLine()).filter((P) =>
260
- B.includes(new Point(P)),
281
+ if (isPDFInstance(B, PDFClasses.Circle))
282
+ return intersectionCircle(A, B as Circle);
283
+ else if (isPDFInstance(B, PDFClasses.Line))
284
+ return intersectionCircleLine(A, B as Line);
285
+ else if (isPDFInstance(B, PDFClasses.Segment)) {
286
+ return intersectionCircleLine(A, (B as Segment).getLine()).filter((P) =>
287
+ (B as Segment).includes(new Point(P)),
261
288
  );
262
- } else if (B instanceof Arc) {
263
- return intersectionCircle(A, B.getCircle()).filter((P) =>
264
- B.includes(new Point(P)),
289
+ } else if (isPDFInstance(B, PDFClasses.Arc)) {
290
+ return intersectionCircle(A, (B as Arc).getCircle()).filter((P) =>
291
+ (B as Arc).includes(new Point(P)),
265
292
  );
266
- } else if (B instanceof Plot) return intersectionsPlot(B, A);
267
- else if (B instanceof Rectangle) return intersectionsRectangle(B, A);
268
- else if (B instanceof Ellipse) return intersectionsEllipse(B, A);
269
- return B;
293
+ } else if (isPDFInstance(B, PDFClasses.Plot))
294
+ return intersectionsPlot(B as Plot, A);
295
+ else if (isPDFInstance(B, PDFClasses.Rectangle))
296
+ return intersectionsRectangle(B as Rectangle, A);
297
+ else if (isPDFInstance(B, PDFClasses.Ellipse))
298
+ return intersectionsEllipse(B as Ellipse, A);
299
+ return B as never;
270
300
  };
271
301
 
272
302
  export const getIntersections = (elements: GraphicElement[]) => {
@@ -15,6 +15,7 @@ import PDFEmbeddedFile from './PDFEmbeddedFile';
15
15
  import PDFSvg from './PDFSvg';
16
16
  import { SecurityOptions } from '../core/security/PDFSecurity';
17
17
  import { DocumentSnapshot } from './snapshot';
18
+ import { PDFClasses } from './objects';
18
19
  export type BasePDFAttachment = {
19
20
  name: string;
20
21
  data: Uint8Array;
@@ -99,6 +100,8 @@ export default class PDFDocument {
99
100
  * @returns Resolves with the newly created document.
100
101
  */
101
102
  static create(options?: CreateOptions): Promise<PDFDocument>;
103
+ static className: () => PDFClasses;
104
+ myClass(): PDFClasses;
102
105
  /** The low-level context of this document. */
103
106
  readonly context: PDFContext;
104
107
  /** The catalog of this document. */
@@ -6,6 +6,7 @@ import { ImageAlignment } from '../image/alignment';
6
6
  import { AppearanceProviderFor } from './appearances';
7
7
  import PDFField, { FieldAppearanceOptions } from './PDFField';
8
8
  import { PDFRef, PDFAcroPushButton } from '../../core';
9
+ import { PDFClasses } from '../objects';
9
10
  /**
10
11
  * Represents a button field of a [[PDFForm]].
11
12
  *
@@ -16,6 +17,8 @@ import { PDFRef, PDFAcroPushButton } from '../../core';
16
17
  * have a text label describing the action that they perform when clicked.
17
18
  */
18
19
  export default class PDFButton extends PDFField {
20
+ static className: () => PDFClasses;
21
+ myClass(): PDFClasses;
19
22
  /**
20
23
  * > **NOTE:** You probably don't want to call this method directly. Instead,
21
24
  * > consider using the [[PDFForm.getButton]] method, which will create an
@@ -3,6 +3,7 @@ import PDFPage from '../PDFPage';
3
3
  import { AppearanceProviderFor } from './appearances';
4
4
  import PDFField, { FieldAppearanceOptions } from './PDFField';
5
5
  import { PDFRef, PDFAcroCheckBox } from '../../core';
6
+ import { PDFClasses } from '../objects';
6
7
  /**
7
8
  * Represents a check box field of a [[PDFForm]].
8
9
  *
@@ -13,6 +14,8 @@ import { PDFRef, PDFAcroCheckBox } from '../../core';
13
14
  * square in shape and display a check mark when they are in the `on` state.
14
15
  */
15
16
  export default class PDFCheckBox extends PDFField {
17
+ static className: () => PDFClasses;
18
+ myClass(): PDFClasses;
16
19
  /**
17
20
  * > **NOTE:** You probably don't want to call this method directly. Instead,
18
21
  * > consider using the [[PDFForm.getCheckBox]] method, which will create an
@@ -4,6 +4,7 @@ import PDFFont from '../PDFFont';
4
4
  import PDFField, { FieldAppearanceOptions } from './PDFField';
5
5
  import { AppearanceProviderFor } from './appearances';
6
6
  import { PDFRef, PDFAcroComboBox } from '../../core';
7
+ import { PDFClasses } from '../objects';
7
8
  /**
8
9
  * Represents a dropdown field of a [[PDFForm]].
9
10
  *
@@ -17,6 +18,8 @@ import { PDFRef, PDFAcroComboBox } from '../../core';
17
18
  * choose an option from the list (see [[PDFDropdown.isEditable]]).
18
19
  */
19
20
  export default class PDFDropdown extends PDFField {
21
+ static className: () => PDFClasses;
22
+ myClass(): PDFClasses;
20
23
  /**
21
24
  * > **NOTE:** You probably don't want to call this method directly. Instead,
22
25
  * > consider using the [[PDFForm.getDropdown]] method, which will create an
@@ -6,6 +6,7 @@ import { Rotation } from '../rotations';
6
6
  import { PDFRef, PDFWidgetAnnotation, PDFOperator, PDFName, PDFDict, PDFAcroTerminal } from '../../core';
7
7
  import { ImageAlignment } from '../image';
8
8
  import PDFImage from '../PDFImage';
9
+ import { PDFClasses } from '../objects';
9
10
  export interface FieldAppearanceOptions {
10
11
  x?: number;
11
12
  y?: number;
@@ -41,6 +42,8 @@ export declare const assertFieldAppearanceOptions: (options?: FieldAppearanceOpt
41
42
  * to be rendered.
42
43
  */
43
44
  export default class PDFField {
45
+ static className: () => PDFClasses;
46
+ myClass(): PDFClasses;
44
47
  /** The low-level PDFAcroTerminal wrapped by this field. */
45
48
  readonly acroField: PDFAcroTerminal;
46
49
  /** The unique reference assigned to this field within the document. */
@@ -4,6 +4,7 @@ import PDFFont from '../PDFFont';
4
4
  import PDFField, { FieldAppearanceOptions } from './PDFField';
5
5
  import { AppearanceProviderFor } from './appearances';
6
6
  import { PDFRef, PDFAcroListBox } from '../../core';
7
+ import { PDFClasses } from '../objects';
7
8
  /**
8
9
  * Represents an option list field of a [[PDFForm]].
9
10
  *
@@ -16,6 +17,8 @@ import { PDFRef, PDFAcroListBox } from '../../core';
16
17
  * more than one option (see [[PDFOptionList.isMultiselect]]).
17
18
  */
18
19
  export default class PDFOptionList extends PDFField {
20
+ static className: () => PDFClasses;
21
+ myClass(): PDFClasses;
19
22
  /**
20
23
  * > **NOTE:** You probably don't want to call this method directly. Instead,
21
24
  * > consider using the [[PDFForm.getOptionList]] method, which will create
@@ -3,6 +3,7 @@ import PDFPage from '../PDFPage';
3
3
  import PDFField, { FieldAppearanceOptions } from './PDFField';
4
4
  import { AppearanceProviderFor } from './appearances';
5
5
  import { PDFRef, PDFAcroRadioButton } from '../../core';
6
+ import { PDFClasses } from '../objects';
6
7
  /**
7
8
  * Represents a radio group field of a [[PDFForm]].
8
9
  *
@@ -21,6 +22,8 @@ import { PDFRef, PDFAcroRadioButton } from '../../core';
21
22
  * [[PDFRadioGroup.isMutuallyExclusive]]).
22
23
  */
23
24
  export default class PDFRadioGroup extends PDFField {
25
+ static className: () => PDFClasses;
26
+ myClass(): PDFClasses;
24
27
  /**
25
28
  * > **NOTE:** You probably don't want to call this method directly. Instead,
26
29
  * > consider using the [[PDFForm.getOptionList]] method, which will create an
@@ -1,6 +1,7 @@
1
1
  import PDFDocument from '../PDFDocument';
2
2
  import PDFField from './PDFField';
3
3
  import { PDFRef, PDFAcroSignature } from '../../core';
4
+ import { PDFClasses } from '../objects';
4
5
  /**
5
6
  * Represents a signature field of a [[PDFForm]].
6
7
  *
@@ -9,6 +10,8 @@ import { PDFRef, PDFAcroSignature } from '../../core';
9
10
  * reading the contents of existing digital signatures.
10
11
  */
11
12
  export default class PDFSignature extends PDFField {
13
+ static className: () => PDFClasses;
14
+ myClass(): PDFClasses;
12
15
  /**
13
16
  * > **NOTE:** You probably don't want to call this method directly. Instead,
14
17
  * > consider using the [[PDFForm.getSignature]] method, which will create an
@@ -6,6 +6,7 @@ import PDFField, { FieldAppearanceOptions } from './PDFField';
6
6
  import { AppearanceProviderFor } from './appearances';
7
7
  import { TextAlignment } from '../text/alignment';
8
8
  import { PDFRef, PDFAcroText } from '../../core';
9
+ import { PDFClasses } from '../objects';
9
10
  /**
10
11
  * Represents a text field of a [[PDFForm]].
11
12
  *
@@ -16,6 +17,8 @@ import { PDFRef, PDFAcroText } from '../../core';
16
17
  * to be entered (see [[PDFTextField.isMultiline]]).
17
18
  */
18
19
  export default class PDFTextField extends PDFField {
20
+ static className: () => PDFClasses;
21
+ myClass(): PDFClasses;
19
22
  /**
20
23
  * > **NOTE:** You probably don't want to call this method directly. Instead,
21
24
  * > consider using the [[PDFForm.getTextField]] method, which will create an
@@ -2,4 +2,65 @@ import { PDFName, PDFNumber } from '../core';
2
2
  export declare const asPDFName: (name: string | PDFName) => PDFName;
3
3
  export declare const asPDFNumber: (num: number | PDFNumber) => PDFNumber;
4
4
  export declare const asNumber: (num: number | PDFNumber) => number;
5
+ export declare enum PDFClasses {
6
+ PDFDict = "PDFDict",
7
+ PDFObject = "PDFObject",
8
+ PDFNumber = "PDFNumber",
9
+ PDFName = "PDFName",
10
+ PDFStream = "PDFStream",
11
+ PDFWriter = "PDFWriter",
12
+ PDFStreamWriter = "PDFStreamWriter",
13
+ PDFString = "PDFString",
14
+ PDFHexString = "PDFHexString",
15
+ PDFDocument = "PDFDocument",
16
+ PDFPageLeaf = "PDFPageLeaf",
17
+ StandardFontEmbedder = "StandardFontEmbedder",
18
+ PDFArray = "PDFArray",
19
+ PDFButton = "PDFButton",
20
+ PDFCheckBox = "PDFCheckBox",
21
+ PDFDropdown = "PDFDropdown",
22
+ PDFOptionList = "PDFOptionList",
23
+ PDFRadioGroup = "PDFRadioGroup",
24
+ PDFSignature = "PDFSignature",
25
+ PDFTextField = "PDFTextField",
26
+ PDFField = "PDFField",
27
+ PDFRef = "PDFRef",
28
+ PDFAcroForm = "PDFAcroForm",
29
+ PDFAcroField = "PDFAcroField",
30
+ PDFAcroNonTerminal = "PDFAcroNonTerminal",
31
+ PDFAcroPushButton = "PDFAcroPushButton",
32
+ PDFAcroCheckBox = "PDFAcroCheckBox",
33
+ PDFAcroComboBox = "PDFAcroComboBox",
34
+ PDFAcroListBox = "PDFAcroListBox",
35
+ PDFAcroText = "PDFAcroText",
36
+ PDFAcroRadioButton = "PDFAcroRadioButton",
37
+ PDFAcroSignature = "PDFAcroSignature",
38
+ AESBaseCipher = "AESBaseCipher",
39
+ PDFBool = "PDFBool",
40
+ PDFRawStream = "PDFRawStream",
41
+ PDFContentStream = "PDFContentStream",
42
+ Segment = "Segment",
43
+ Rectangle = "Rectangle",
44
+ Arc = "Arc",
45
+ Circle = "Circle",
46
+ Ellipse = "Ellipse",
47
+ Line = "Line",
48
+ Plot = "Plot",
49
+ Point = "Point",
50
+ PDFPageTree = "PDFPageTree",
51
+ PDFInvalidObject = "PDFInvalidObject",
52
+ PDFCatalog = "PDFCatalog",
53
+ DefaultDocumentSnapshot = "DefaultDocumentSnapshot",
54
+ PDFObjectStream = "PDFObjectStream",
55
+ IncrementalDocumentSnapshot = "IncrementalDocumentSnapshot",
56
+ PDFNull = "PDFNull"
57
+ }
58
+ /**
59
+ * Replaces instanceof operator by a "secure function" that uses clases internal identification.
60
+ * This allows complex environments, where objects comes from different library instances, to work as expected.
61
+ * @param {any} object Object to which compare the classname.
62
+ * @param {PDFClasses | typeof PDFClass} className Class name object is expected to be an instanca (or subclass instance)
63
+ * @returns {boolean}
64
+ */
65
+ export declare const isPDFInstance: (object: any, className: PDFClasses) => boolean;
5
66
  //# sourceMappingURL=objects.d.ts.map