@pdfme/pdf-lib 5.4.0-dev.63 → 5.4.0-dev.66

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 (487) hide show
  1. package/dist/cjs/src/api/PDFDocument.js +3 -11
  2. package/dist/cjs/src/api/PDFDocument.js.map +1 -1
  3. package/dist/cjs/src/api/PDFEmbeddedFile.js.map +1 -1
  4. package/dist/cjs/src/api/PDFEmbeddedPage.js.map +1 -1
  5. package/dist/cjs/src/api/PDFFont.js.map +1 -1
  6. package/dist/cjs/src/api/PDFJavaScript.js.map +1 -1
  7. package/dist/cjs/src/api/PDFPage.js +16 -42
  8. package/dist/cjs/src/api/PDFPage.js.map +1 -1
  9. package/dist/cjs/src/api/colors.js.map +1 -1
  10. package/dist/cjs/src/api/errors.js.map +1 -1
  11. package/dist/cjs/src/api/form/PDFButton.js +1 -3
  12. package/dist/cjs/src/api/form/PDFButton.js.map +1 -1
  13. package/dist/cjs/src/api/form/PDFCheckBox.js +1 -3
  14. package/dist/cjs/src/api/form/PDFCheckBox.js.map +1 -1
  15. package/dist/cjs/src/api/form/PDFDropdown.js +1 -3
  16. package/dist/cjs/src/api/form/PDFDropdown.js.map +1 -1
  17. package/dist/cjs/src/api/form/PDFField.js +4 -10
  18. package/dist/cjs/src/api/form/PDFField.js.map +1 -1
  19. package/dist/cjs/src/api/form/PDFForm.js +1 -3
  20. package/dist/cjs/src/api/form/PDFForm.js.map +1 -1
  21. package/dist/cjs/src/api/form/PDFOptionList.js.map +1 -1
  22. package/dist/cjs/src/api/form/PDFRadioGroup.js +1 -3
  23. package/dist/cjs/src/api/form/PDFRadioGroup.js.map +1 -1
  24. package/dist/cjs/src/api/form/PDFSignature.js +1 -3
  25. package/dist/cjs/src/api/form/PDFSignature.js.map +1 -1
  26. package/dist/cjs/src/api/form/PDFTextField.js.map +1 -1
  27. package/dist/cjs/src/api/form/appearances.js.map +1 -1
  28. package/dist/cjs/src/api/operations.js.map +1 -1
  29. package/dist/cjs/src/api/operators.js +1 -5
  30. package/dist/cjs/src/api/operators.js.map +1 -1
  31. package/dist/cjs/src/api/rotations.js.map +1 -1
  32. package/dist/cjs/src/api/svg.js +25 -23
  33. package/dist/cjs/src/api/svg.js.map +1 -1
  34. package/dist/cjs/src/api/svgPath.js +1 -2
  35. package/dist/cjs/src/api/svgPath.js.map +1 -1
  36. package/dist/cjs/src/api/text/layout.js.map +1 -1
  37. package/dist/cjs/src/core/PDFContext.js.map +1 -1
  38. package/dist/cjs/src/core/PDFObjectCopier.js.map +1 -1
  39. package/dist/cjs/src/core/acroform/PDFAcroButton.js +1 -2
  40. package/dist/cjs/src/core/acroform/PDFAcroButton.js.map +1 -1
  41. package/dist/cjs/src/core/acroform/PDFAcroCheckBox.js.map +1 -1
  42. package/dist/cjs/src/core/acroform/PDFAcroChoice.js.map +1 -1
  43. package/dist/cjs/src/core/acroform/PDFAcroComboBox.js.map +1 -1
  44. package/dist/cjs/src/core/acroform/PDFAcroField.js.map +1 -1
  45. package/dist/cjs/src/core/acroform/PDFAcroForm.js.map +1 -1
  46. package/dist/cjs/src/core/acroform/PDFAcroListBox.js.map +1 -1
  47. package/dist/cjs/src/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  48. package/dist/cjs/src/core/acroform/PDFAcroPushButton.js.map +1 -1
  49. package/dist/cjs/src/core/acroform/PDFAcroRadioButton.js.map +1 -1
  50. package/dist/cjs/src/core/acroform/PDFAcroSignature.js.map +1 -1
  51. package/dist/cjs/src/core/acroform/PDFAcroTerminal.js.map +1 -1
  52. package/dist/cjs/src/core/acroform/utils.js.map +1 -1
  53. package/dist/cjs/src/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  54. package/dist/cjs/src/core/crypto.js +122 -179
  55. package/dist/cjs/src/core/crypto.js.map +1 -1
  56. package/dist/cjs/src/core/document/PDFCrossRefSection.js.map +1 -1
  57. package/dist/cjs/src/core/document/PDFHeader.js.map +1 -1
  58. package/dist/cjs/src/core/document/PDFTrailer.js.map +1 -1
  59. package/dist/cjs/src/core/embedders/CMap.js.map +1 -1
  60. package/dist/cjs/src/core/embedders/CustomFontEmbedder.js +1 -2
  61. package/dist/cjs/src/core/embedders/CustomFontEmbedder.js.map +1 -1
  62. package/dist/cjs/src/core/embedders/CustomFontSubsetEmbedder.js.map +1 -1
  63. package/dist/cjs/src/core/embedders/FileEmbedder.js +3 -7
  64. package/dist/cjs/src/core/embedders/FileEmbedder.js.map +1 -1
  65. package/dist/cjs/src/core/embedders/JpegEmbedder.js +1 -3
  66. package/dist/cjs/src/core/embedders/JpegEmbedder.js.map +1 -1
  67. package/dist/cjs/src/core/embedders/PDFPageEmbedder.js +11 -7
  68. package/dist/cjs/src/core/embedders/PDFPageEmbedder.js.map +1 -1
  69. package/dist/cjs/src/core/embedders/StandardFontEmbedder.js.map +1 -1
  70. package/dist/cjs/src/core/errors.js +1 -3
  71. package/dist/cjs/src/core/errors.js.map +1 -1
  72. package/dist/cjs/src/core/index.js.map +1 -1
  73. package/dist/cjs/src/core/interactive/ViewerPreferences.js.map +1 -1
  74. package/dist/cjs/src/core/objects/PDFArray.js.map +1 -1
  75. package/dist/cjs/src/core/objects/PDFDict.js.map +1 -1
  76. package/dist/cjs/src/core/objects/PDFName.js +1 -3
  77. package/dist/cjs/src/core/objects/PDFName.js.map +1 -1
  78. package/dist/cjs/src/core/objects/PDFRawStream.js.map +1 -1
  79. package/dist/cjs/src/core/objects/PDFRef.js.map +1 -1
  80. package/dist/cjs/src/core/objects/PDFStream.js.map +1 -1
  81. package/dist/cjs/src/core/operators/PDFOperator.js.map +1 -1
  82. package/dist/cjs/src/core/parser/PDFObjectParser.js +1 -2
  83. package/dist/cjs/src/core/parser/PDFObjectParser.js.map +1 -1
  84. package/dist/cjs/src/core/parser/PDFObjectStreamParser.js.map +1 -1
  85. package/dist/cjs/src/core/parser/PDFParser.js +1 -2
  86. package/dist/cjs/src/core/parser/PDFParser.js.map +1 -1
  87. package/dist/cjs/src/core/parser/PDFXRefStreamParser.js.map +1 -1
  88. package/dist/cjs/src/core/streams/Ascii85Stream.js.map +1 -1
  89. package/dist/cjs/src/core/streams/DecryptStream.js.map +1 -1
  90. package/dist/cjs/src/core/streams/FlateStream.js.map +1 -1
  91. package/dist/cjs/src/core/streams/LZWStream.js.map +1 -1
  92. package/dist/cjs/src/core/streams/Stream.js.map +1 -1
  93. package/dist/cjs/src/core/streams/decode.js +1 -1
  94. package/dist/cjs/src/core/streams/decode.js.map +1 -1
  95. package/dist/cjs/src/core/structures/PDFCatalog.js.map +1 -1
  96. package/dist/cjs/src/core/structures/PDFCrossRefStream.js.map +1 -1
  97. package/dist/cjs/src/core/structures/PDFFlateStream.js.map +1 -1
  98. package/dist/cjs/src/core/structures/PDFObjectStream.js +1 -4
  99. package/dist/cjs/src/core/structures/PDFObjectStream.js.map +1 -1
  100. package/dist/cjs/src/core/structures/PDFPageLeaf.js +1 -6
  101. package/dist/cjs/src/core/structures/PDFPageLeaf.js.map +1 -1
  102. package/dist/cjs/src/core/structures/PDFPageTree.js +1 -1
  103. package/dist/cjs/src/core/structures/PDFPageTree.js.map +1 -1
  104. package/dist/cjs/src/core/syntax/Keywords.js +4 -30
  105. package/dist/cjs/src/core/syntax/Keywords.js.map +1 -1
  106. package/dist/cjs/src/core/writers/PDFStreamWriter.js.map +1 -1
  107. package/dist/cjs/src/core/writers/PDFWriter.js.map +1 -1
  108. package/dist/cjs/src/types/matrix.js.map +1 -1
  109. package/dist/cjs/src/utils/arrays.js +2 -5
  110. package/dist/cjs/src/utils/arrays.js.map +1 -1
  111. package/dist/cjs/src/utils/base64.js.map +1 -1
  112. package/dist/cjs/src/utils/elements/Arc.js +3 -6
  113. package/dist/cjs/src/utils/elements/Arc.js.map +1 -1
  114. package/dist/cjs/src/utils/elements/Circle.js.map +1 -1
  115. package/dist/cjs/src/utils/elements/Ellipse.js +1 -1
  116. package/dist/cjs/src/utils/elements/Ellipse.js.map +1 -1
  117. package/dist/cjs/src/utils/elements/Line.js +1 -3
  118. package/dist/cjs/src/utils/elements/Line.js.map +1 -1
  119. package/dist/cjs/src/utils/elements/Segment.js +1 -2
  120. package/dist/cjs/src/utils/elements/Segment.js.map +1 -1
  121. package/dist/cjs/src/utils/intersections.js.map +1 -1
  122. package/dist/cjs/src/utils/maths.js.map +1 -1
  123. package/dist/cjs/src/utils/strings.js.map +1 -1
  124. package/dist/cjs/src/utils/unicode.js.map +1 -1
  125. package/dist/cjs/src/utils/validators.js.map +1 -1
  126. package/dist/esm/src/api/PDFDocument.js +3 -11
  127. package/dist/esm/src/api/PDFDocument.js.map +1 -1
  128. package/dist/esm/src/api/PDFEmbeddedFile.js.map +1 -1
  129. package/dist/esm/src/api/PDFEmbeddedPage.js.map +1 -1
  130. package/dist/esm/src/api/PDFFont.js +1 -1
  131. package/dist/esm/src/api/PDFFont.js.map +1 -1
  132. package/dist/esm/src/api/PDFJavaScript.js.map +1 -1
  133. package/dist/esm/src/api/PDFPage.js +16 -42
  134. package/dist/esm/src/api/PDFPage.js.map +1 -1
  135. package/dist/esm/src/api/colors.js.map +1 -1
  136. package/dist/esm/src/api/errors.js.map +1 -1
  137. package/dist/esm/src/api/form/PDFButton.js +3 -5
  138. package/dist/esm/src/api/form/PDFButton.js.map +1 -1
  139. package/dist/esm/src/api/form/PDFCheckBox.js +3 -5
  140. package/dist/esm/src/api/form/PDFCheckBox.js.map +1 -1
  141. package/dist/esm/src/api/form/PDFDropdown.js +2 -4
  142. package/dist/esm/src/api/form/PDFDropdown.js.map +1 -1
  143. package/dist/esm/src/api/form/PDFField.js +4 -10
  144. package/dist/esm/src/api/form/PDFField.js.map +1 -1
  145. package/dist/esm/src/api/form/PDFForm.js +2 -4
  146. package/dist/esm/src/api/form/PDFForm.js.map +1 -1
  147. package/dist/esm/src/api/form/PDFOptionList.js +2 -2
  148. package/dist/esm/src/api/form/PDFOptionList.js.map +1 -1
  149. package/dist/esm/src/api/form/PDFRadioGroup.js +2 -4
  150. package/dist/esm/src/api/form/PDFRadioGroup.js.map +1 -1
  151. package/dist/esm/src/api/form/PDFSignature.js +1 -3
  152. package/dist/esm/src/api/form/PDFSignature.js.map +1 -1
  153. package/dist/esm/src/api/form/PDFTextField.js +2 -2
  154. package/dist/esm/src/api/form/PDFTextField.js.map +1 -1
  155. package/dist/esm/src/api/form/appearances.js +1 -1
  156. package/dist/esm/src/api/form/appearances.js.map +1 -1
  157. package/dist/esm/src/api/operations.js.map +1 -1
  158. package/dist/esm/src/api/operators.js +2 -6
  159. package/dist/esm/src/api/operators.js.map +1 -1
  160. package/dist/esm/src/api/rotations.js.map +1 -1
  161. package/dist/esm/src/api/svg.js +26 -24
  162. package/dist/esm/src/api/svg.js.map +1 -1
  163. package/dist/esm/src/api/svgPath.js +2 -3
  164. package/dist/esm/src/api/svgPath.js.map +1 -1
  165. package/dist/esm/src/api/text/layout.js +1 -1
  166. package/dist/esm/src/api/text/layout.js.map +1 -1
  167. package/dist/esm/src/core/PDFContext.js.map +1 -1
  168. package/dist/esm/src/core/PDFObjectCopier.js.map +1 -1
  169. package/dist/esm/src/core/acroform/PDFAcroButton.js +1 -2
  170. package/dist/esm/src/core/acroform/PDFAcroButton.js.map +1 -1
  171. package/dist/esm/src/core/acroform/PDFAcroCheckBox.js.map +1 -1
  172. package/dist/esm/src/core/acroform/PDFAcroChoice.js.map +1 -1
  173. package/dist/esm/src/core/acroform/PDFAcroComboBox.js.map +1 -1
  174. package/dist/esm/src/core/acroform/PDFAcroField.js.map +1 -1
  175. package/dist/esm/src/core/acroform/PDFAcroForm.js.map +1 -1
  176. package/dist/esm/src/core/acroform/PDFAcroListBox.js.map +1 -1
  177. package/dist/esm/src/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  178. package/dist/esm/src/core/acroform/PDFAcroPushButton.js.map +1 -1
  179. package/dist/esm/src/core/acroform/PDFAcroRadioButton.js.map +1 -1
  180. package/dist/esm/src/core/acroform/PDFAcroSignature.js.map +1 -1
  181. package/dist/esm/src/core/acroform/PDFAcroTerminal.js.map +1 -1
  182. package/dist/esm/src/core/acroform/utils.js.map +1 -1
  183. package/dist/esm/src/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  184. package/dist/esm/src/core/crypto.js +122 -179
  185. package/dist/esm/src/core/crypto.js.map +1 -1
  186. package/dist/esm/src/core/document/PDFCrossRefSection.js.map +1 -1
  187. package/dist/esm/src/core/document/PDFHeader.js.map +1 -1
  188. package/dist/esm/src/core/document/PDFTrailer.js.map +1 -1
  189. package/dist/esm/src/core/embedders/CMap.js +1 -1
  190. package/dist/esm/src/core/embedders/CMap.js.map +1 -1
  191. package/dist/esm/src/core/embedders/CustomFontEmbedder.js +2 -3
  192. package/dist/esm/src/core/embedders/CustomFontEmbedder.js.map +1 -1
  193. package/dist/esm/src/core/embedders/CustomFontSubsetEmbedder.js.map +1 -1
  194. package/dist/esm/src/core/embedders/FileEmbedder.js +3 -7
  195. package/dist/esm/src/core/embedders/FileEmbedder.js.map +1 -1
  196. package/dist/esm/src/core/embedders/JpegEmbedder.js +1 -3
  197. package/dist/esm/src/core/embedders/JpegEmbedder.js.map +1 -1
  198. package/dist/esm/src/core/embedders/PDFPageEmbedder.js +12 -8
  199. package/dist/esm/src/core/embedders/PDFPageEmbedder.js.map +1 -1
  200. package/dist/esm/src/core/embedders/StandardFontEmbedder.js +1 -1
  201. package/dist/esm/src/core/embedders/StandardFontEmbedder.js.map +1 -1
  202. package/dist/esm/src/core/errors.js +1 -3
  203. package/dist/esm/src/core/errors.js.map +1 -1
  204. package/dist/esm/src/core/index.js +2 -2
  205. package/dist/esm/src/core/index.js.map +1 -1
  206. package/dist/esm/src/core/interactive/ViewerPreferences.js +1 -1
  207. package/dist/esm/src/core/interactive/ViewerPreferences.js.map +1 -1
  208. package/dist/esm/src/core/objects/PDFArray.js.map +1 -1
  209. package/dist/esm/src/core/objects/PDFDict.js.map +1 -1
  210. package/dist/esm/src/core/objects/PDFName.js +2 -4
  211. package/dist/esm/src/core/objects/PDFName.js.map +1 -1
  212. package/dist/esm/src/core/objects/PDFRawStream.js.map +1 -1
  213. package/dist/esm/src/core/objects/PDFRef.js.map +1 -1
  214. package/dist/esm/src/core/objects/PDFStream.js.map +1 -1
  215. package/dist/esm/src/core/operators/PDFOperator.js.map +1 -1
  216. package/dist/esm/src/core/parser/PDFObjectParser.js +1 -2
  217. package/dist/esm/src/core/parser/PDFObjectParser.js.map +1 -1
  218. package/dist/esm/src/core/parser/PDFObjectStreamParser.js.map +1 -1
  219. package/dist/esm/src/core/parser/PDFParser.js +1 -2
  220. package/dist/esm/src/core/parser/PDFParser.js.map +1 -1
  221. package/dist/esm/src/core/parser/PDFXRefStreamParser.js.map +1 -1
  222. package/dist/esm/src/core/streams/Ascii85Stream.js.map +1 -1
  223. package/dist/esm/src/core/streams/DecryptStream.js.map +1 -1
  224. package/dist/esm/src/core/streams/FlateStream.js.map +1 -1
  225. package/dist/esm/src/core/streams/LZWStream.js.map +1 -1
  226. package/dist/esm/src/core/streams/Stream.js.map +1 -1
  227. package/dist/esm/src/core/streams/decode.js +1 -1
  228. package/dist/esm/src/core/streams/decode.js.map +1 -1
  229. package/dist/esm/src/core/structures/PDFCatalog.js.map +1 -1
  230. package/dist/esm/src/core/structures/PDFCrossRefStream.js.map +1 -1
  231. package/dist/esm/src/core/structures/PDFFlateStream.js.map +1 -1
  232. package/dist/esm/src/core/structures/PDFObjectStream.js +1 -4
  233. package/dist/esm/src/core/structures/PDFObjectStream.js.map +1 -1
  234. package/dist/esm/src/core/structures/PDFPageLeaf.js +1 -6
  235. package/dist/esm/src/core/structures/PDFPageLeaf.js.map +1 -1
  236. package/dist/esm/src/core/structures/PDFPageTree.js +1 -1
  237. package/dist/esm/src/core/structures/PDFPageTree.js.map +1 -1
  238. package/dist/esm/src/core/syntax/Keywords.js +4 -30
  239. package/dist/esm/src/core/syntax/Keywords.js.map +1 -1
  240. package/dist/esm/src/core/writers/PDFStreamWriter.js.map +1 -1
  241. package/dist/esm/src/core/writers/PDFWriter.js.map +1 -1
  242. package/dist/esm/src/types/matrix.js.map +1 -1
  243. package/dist/esm/src/utils/arrays.js +2 -5
  244. package/dist/esm/src/utils/arrays.js.map +1 -1
  245. package/dist/esm/src/utils/base64.js.map +1 -1
  246. package/dist/esm/src/utils/elements/Arc.js +3 -6
  247. package/dist/esm/src/utils/elements/Arc.js.map +1 -1
  248. package/dist/esm/src/utils/elements/Circle.js +1 -1
  249. package/dist/esm/src/utils/elements/Circle.js.map +1 -1
  250. package/dist/esm/src/utils/elements/Ellipse.js +1 -1
  251. package/dist/esm/src/utils/elements/Ellipse.js.map +1 -1
  252. package/dist/esm/src/utils/elements/Line.js +1 -3
  253. package/dist/esm/src/utils/elements/Line.js.map +1 -1
  254. package/dist/esm/src/utils/elements/Segment.js +2 -3
  255. package/dist/esm/src/utils/elements/Segment.js.map +1 -1
  256. package/dist/esm/src/utils/intersections.js.map +1 -1
  257. package/dist/esm/src/utils/maths.js.map +1 -1
  258. package/dist/esm/src/utils/strings.js.map +1 -1
  259. package/dist/esm/src/utils/unicode.js.map +1 -1
  260. package/dist/esm/src/utils/validators.js.map +1 -1
  261. package/dist/node/src/api/PDFDocument.js +3 -11
  262. package/dist/node/src/api/PDFDocument.js.map +1 -1
  263. package/dist/node/src/api/PDFEmbeddedFile.js.map +1 -1
  264. package/dist/node/src/api/PDFEmbeddedPage.js.map +1 -1
  265. package/dist/node/src/api/PDFFont.js.map +1 -1
  266. package/dist/node/src/api/PDFJavaScript.js.map +1 -1
  267. package/dist/node/src/api/PDFPage.js +16 -42
  268. package/dist/node/src/api/PDFPage.js.map +1 -1
  269. package/dist/node/src/api/colors.js.map +1 -1
  270. package/dist/node/src/api/errors.js.map +1 -1
  271. package/dist/node/src/api/form/PDFButton.js +1 -3
  272. package/dist/node/src/api/form/PDFButton.js.map +1 -1
  273. package/dist/node/src/api/form/PDFCheckBox.js +1 -3
  274. package/dist/node/src/api/form/PDFCheckBox.js.map +1 -1
  275. package/dist/node/src/api/form/PDFDropdown.js +1 -3
  276. package/dist/node/src/api/form/PDFDropdown.js.map +1 -1
  277. package/dist/node/src/api/form/PDFField.js +4 -10
  278. package/dist/node/src/api/form/PDFField.js.map +1 -1
  279. package/dist/node/src/api/form/PDFForm.js +1 -3
  280. package/dist/node/src/api/form/PDFForm.js.map +1 -1
  281. package/dist/node/src/api/form/PDFOptionList.js.map +1 -1
  282. package/dist/node/src/api/form/PDFRadioGroup.js +1 -3
  283. package/dist/node/src/api/form/PDFRadioGroup.js.map +1 -1
  284. package/dist/node/src/api/form/PDFSignature.js +1 -3
  285. package/dist/node/src/api/form/PDFSignature.js.map +1 -1
  286. package/dist/node/src/api/form/PDFTextField.js.map +1 -1
  287. package/dist/node/src/api/form/appearances.js.map +1 -1
  288. package/dist/node/src/api/operations.js.map +1 -1
  289. package/dist/node/src/api/operators.js +1 -5
  290. package/dist/node/src/api/operators.js.map +1 -1
  291. package/dist/node/src/api/rotations.js.map +1 -1
  292. package/dist/node/src/api/svg.js +25 -23
  293. package/dist/node/src/api/svg.js.map +1 -1
  294. package/dist/node/src/api/svgPath.js +1 -2
  295. package/dist/node/src/api/svgPath.js.map +1 -1
  296. package/dist/node/src/api/text/layout.js.map +1 -1
  297. package/dist/node/src/core/PDFContext.js.map +1 -1
  298. package/dist/node/src/core/PDFObjectCopier.js.map +1 -1
  299. package/dist/node/src/core/acroform/PDFAcroButton.js +1 -2
  300. package/dist/node/src/core/acroform/PDFAcroButton.js.map +1 -1
  301. package/dist/node/src/core/acroform/PDFAcroCheckBox.js.map +1 -1
  302. package/dist/node/src/core/acroform/PDFAcroChoice.js.map +1 -1
  303. package/dist/node/src/core/acroform/PDFAcroComboBox.js.map +1 -1
  304. package/dist/node/src/core/acroform/PDFAcroField.js.map +1 -1
  305. package/dist/node/src/core/acroform/PDFAcroForm.js.map +1 -1
  306. package/dist/node/src/core/acroform/PDFAcroListBox.js.map +1 -1
  307. package/dist/node/src/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  308. package/dist/node/src/core/acroform/PDFAcroPushButton.js.map +1 -1
  309. package/dist/node/src/core/acroform/PDFAcroRadioButton.js.map +1 -1
  310. package/dist/node/src/core/acroform/PDFAcroSignature.js.map +1 -1
  311. package/dist/node/src/core/acroform/PDFAcroTerminal.js.map +1 -1
  312. package/dist/node/src/core/acroform/utils.js.map +1 -1
  313. package/dist/node/src/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  314. package/dist/node/src/core/crypto.js +122 -179
  315. package/dist/node/src/core/crypto.js.map +1 -1
  316. package/dist/node/src/core/document/PDFCrossRefSection.js.map +1 -1
  317. package/dist/node/src/core/document/PDFHeader.js.map +1 -1
  318. package/dist/node/src/core/document/PDFTrailer.js.map +1 -1
  319. package/dist/node/src/core/embedders/CMap.js.map +1 -1
  320. package/dist/node/src/core/embedders/CustomFontEmbedder.js +1 -2
  321. package/dist/node/src/core/embedders/CustomFontEmbedder.js.map +1 -1
  322. package/dist/node/src/core/embedders/CustomFontSubsetEmbedder.js.map +1 -1
  323. package/dist/node/src/core/embedders/FileEmbedder.js +3 -7
  324. package/dist/node/src/core/embedders/FileEmbedder.js.map +1 -1
  325. package/dist/node/src/core/embedders/JpegEmbedder.js +1 -3
  326. package/dist/node/src/core/embedders/JpegEmbedder.js.map +1 -1
  327. package/dist/node/src/core/embedders/PDFPageEmbedder.js +11 -7
  328. package/dist/node/src/core/embedders/PDFPageEmbedder.js.map +1 -1
  329. package/dist/node/src/core/embedders/StandardFontEmbedder.js.map +1 -1
  330. package/dist/node/src/core/errors.js +1 -3
  331. package/dist/node/src/core/errors.js.map +1 -1
  332. package/dist/node/src/core/index.js.map +1 -1
  333. package/dist/node/src/core/interactive/ViewerPreferences.js.map +1 -1
  334. package/dist/node/src/core/objects/PDFArray.js.map +1 -1
  335. package/dist/node/src/core/objects/PDFDict.js.map +1 -1
  336. package/dist/node/src/core/objects/PDFName.js +1 -3
  337. package/dist/node/src/core/objects/PDFName.js.map +1 -1
  338. package/dist/node/src/core/objects/PDFRawStream.js.map +1 -1
  339. package/dist/node/src/core/objects/PDFRef.js.map +1 -1
  340. package/dist/node/src/core/objects/PDFStream.js.map +1 -1
  341. package/dist/node/src/core/operators/PDFOperator.js.map +1 -1
  342. package/dist/node/src/core/parser/PDFObjectParser.js +1 -2
  343. package/dist/node/src/core/parser/PDFObjectParser.js.map +1 -1
  344. package/dist/node/src/core/parser/PDFObjectStreamParser.js.map +1 -1
  345. package/dist/node/src/core/parser/PDFParser.js +1 -2
  346. package/dist/node/src/core/parser/PDFParser.js.map +1 -1
  347. package/dist/node/src/core/parser/PDFXRefStreamParser.js.map +1 -1
  348. package/dist/node/src/core/streams/Ascii85Stream.js.map +1 -1
  349. package/dist/node/src/core/streams/DecryptStream.js.map +1 -1
  350. package/dist/node/src/core/streams/FlateStream.js.map +1 -1
  351. package/dist/node/src/core/streams/LZWStream.js.map +1 -1
  352. package/dist/node/src/core/streams/Stream.js.map +1 -1
  353. package/dist/node/src/core/streams/decode.js +1 -1
  354. package/dist/node/src/core/streams/decode.js.map +1 -1
  355. package/dist/node/src/core/structures/PDFCatalog.js.map +1 -1
  356. package/dist/node/src/core/structures/PDFCrossRefStream.js.map +1 -1
  357. package/dist/node/src/core/structures/PDFFlateStream.js.map +1 -1
  358. package/dist/node/src/core/structures/PDFObjectStream.js +1 -4
  359. package/dist/node/src/core/structures/PDFObjectStream.js.map +1 -1
  360. package/dist/node/src/core/structures/PDFPageLeaf.js +1 -6
  361. package/dist/node/src/core/structures/PDFPageLeaf.js.map +1 -1
  362. package/dist/node/src/core/structures/PDFPageTree.js +1 -1
  363. package/dist/node/src/core/structures/PDFPageTree.js.map +1 -1
  364. package/dist/node/src/core/syntax/Keywords.js +4 -30
  365. package/dist/node/src/core/syntax/Keywords.js.map +1 -1
  366. package/dist/node/src/core/writers/PDFStreamWriter.js.map +1 -1
  367. package/dist/node/src/core/writers/PDFWriter.js.map +1 -1
  368. package/dist/node/src/types/matrix.js.map +1 -1
  369. package/dist/node/src/utils/arrays.js +2 -5
  370. package/dist/node/src/utils/arrays.js.map +1 -1
  371. package/dist/node/src/utils/base64.js.map +1 -1
  372. package/dist/node/src/utils/elements/Arc.js +3 -6
  373. package/dist/node/src/utils/elements/Arc.js.map +1 -1
  374. package/dist/node/src/utils/elements/Circle.js.map +1 -1
  375. package/dist/node/src/utils/elements/Ellipse.js +1 -1
  376. package/dist/node/src/utils/elements/Ellipse.js.map +1 -1
  377. package/dist/node/src/utils/elements/Line.js +1 -3
  378. package/dist/node/src/utils/elements/Line.js.map +1 -1
  379. package/dist/node/src/utils/elements/Segment.js +1 -2
  380. package/dist/node/src/utils/elements/Segment.js.map +1 -1
  381. package/dist/node/src/utils/intersections.js.map +1 -1
  382. package/dist/node/src/utils/maths.js.map +1 -1
  383. package/dist/node/src/utils/strings.js.map +1 -1
  384. package/dist/node/src/utils/unicode.js.map +1 -1
  385. package/dist/node/src/utils/validators.js.map +1 -1
  386. package/dist/types/src/api/form/PDFField.d.ts +1 -1
  387. package/dist/types/src/core/index.d.ts +2 -2
  388. package/dist/types/src/core/streams/decode.d.ts +1 -1
  389. package/dist/types/src/core/writers/PDFWriter.d.ts +1 -4
  390. package/dist/types/src/types/matrix.d.ts +1 -8
  391. package/package.json +1 -1
  392. package/src/api/PDFDocument.ts +11 -44
  393. package/src/api/PDFEmbeddedFile.ts +1 -4
  394. package/src/api/PDFEmbeddedPage.ts +1 -5
  395. package/src/api/PDFFont.ts +1 -6
  396. package/src/api/PDFJavaScript.ts +2 -9
  397. package/src/api/PDFPage.ts +26 -93
  398. package/src/api/PDFPageOptions.ts +4 -4
  399. package/src/api/colors.ts +1 -6
  400. package/src/api/errors.ts +1 -2
  401. package/src/api/form/PDFButton.ts +9 -34
  402. package/src/api/form/PDFCheckBox.ts +4 -19
  403. package/src/api/form/PDFDropdown.ts +6 -21
  404. package/src/api/form/PDFField.ts +11 -41
  405. package/src/api/form/PDFForm.ts +11 -29
  406. package/src/api/form/PDFOptionList.ts +5 -21
  407. package/src/api/form/PDFRadioGroup.ts +6 -22
  408. package/src/api/form/PDFSignature.ts +4 -13
  409. package/src/api/form/PDFTextField.ts +5 -20
  410. package/src/api/form/appearances.ts +33 -33
  411. package/src/api/operations.ts +23 -25
  412. package/src/api/operators.ts +11 -43
  413. package/src/api/rotations.ts +1 -4
  414. package/src/api/svg.ts +145 -195
  415. package/src/api/svgPath.ts +5 -32
  416. package/src/api/text/layout.ts +3 -18
  417. package/src/core/PDFContext.ts +10 -36
  418. package/src/core/PDFObjectCopier.ts +1 -2
  419. package/src/core/acroform/PDFAcroButton.ts +3 -13
  420. package/src/core/acroform/PDFAcroCheckBox.ts +1 -2
  421. package/src/core/acroform/PDFAcroChoice.ts +2 -9
  422. package/src/core/acroform/PDFAcroComboBox.ts +1 -2
  423. package/src/core/acroform/PDFAcroField.ts +1 -2
  424. package/src/core/acroform/PDFAcroForm.ts +2 -5
  425. package/src/core/acroform/PDFAcroListBox.ts +1 -2
  426. package/src/core/acroform/PDFAcroNonTerminal.ts +1 -2
  427. package/src/core/acroform/PDFAcroPushButton.ts +1 -2
  428. package/src/core/acroform/PDFAcroRadioButton.ts +1 -2
  429. package/src/core/acroform/PDFAcroSignature.ts +1 -2
  430. package/src/core/acroform/PDFAcroTerminal.ts +1 -2
  431. package/src/core/acroform/utils.ts +3 -9
  432. package/src/core/annotation/PDFWidgetAnnotation.ts +1 -2
  433. package/src/core/crypto.ts +143 -287
  434. package/src/core/document/PDFCrossRefSection.ts +3 -15
  435. package/src/core/document/PDFHeader.ts +1 -2
  436. package/src/core/document/PDFTrailer.ts +1 -2
  437. package/src/core/embedders/CMap.ts +1 -6
  438. package/src/core/embedders/CustomFontEmbedder.ts +4 -16
  439. package/src/core/embedders/CustomFontSubsetEmbedder.ts +2 -13
  440. package/src/core/embedders/FileEmbedder.ts +5 -23
  441. package/src/core/embedders/JpegEmbedder.ts +2 -11
  442. package/src/core/embedders/PDFPageEmbedder.ts +12 -14
  443. package/src/core/embedders/StandardFontEmbedder.ts +3 -12
  444. package/src/core/errors.ts +1 -3
  445. package/src/core/index.ts +2 -8
  446. package/src/core/interactive/ViewerPreferences.ts +4 -18
  447. package/src/core/objects/PDFArray.ts +2 -8
  448. package/src/core/objects/PDFDict.ts +3 -11
  449. package/src/core/objects/PDFName.ts +2 -9
  450. package/src/core/objects/PDFRawStream.ts +3 -10
  451. package/src/core/objects/PDFRef.ts +1 -5
  452. package/src/core/objects/PDFStream.ts +2 -8
  453. package/src/core/operators/PDFOperator.ts +2 -9
  454. package/src/core/parser/PDFObjectParser.ts +5 -14
  455. package/src/core/parser/PDFObjectStreamParser.ts +2 -4
  456. package/src/core/parser/PDFParser.ts +5 -21
  457. package/src/core/parser/PDFXRefStreamParser.ts +1 -2
  458. package/src/core/streams/Ascii85Stream.ts +1 -2
  459. package/src/core/streams/DecryptStream.ts +2 -9
  460. package/src/core/streams/FlateStream.ts +4 -14
  461. package/src/core/streams/LZWStream.ts +2 -9
  462. package/src/core/streams/Stream.ts +2 -8
  463. package/src/core/streams/decode.ts +2 -10
  464. package/src/core/structures/PDFCatalog.ts +2 -6
  465. package/src/core/structures/PDFCrossRefStream.ts +2 -10
  466. package/src/core/structures/PDFFlateStream.ts +1 -4
  467. package/src/core/structures/PDFObjectStream.ts +4 -14
  468. package/src/core/structures/PDFPageLeaf.ts +9 -28
  469. package/src/core/structures/PDFPageTree.ts +2 -5
  470. package/src/core/syntax/Keywords.ts +4 -30
  471. package/src/core/writers/PDFStreamWriter.ts +2 -11
  472. package/src/core/writers/PDFWriter.ts +2 -6
  473. package/src/types/fontkit.ts +3 -16
  474. package/src/types/index.ts +6 -14
  475. package/src/types/matrix.ts +1 -8
  476. package/src/utils/arrays.ts +3 -8
  477. package/src/utils/base64.ts +2 -4
  478. package/src/utils/elements/Arc.ts +5 -15
  479. package/src/utils/elements/Circle.ts +1 -9
  480. package/src/utils/elements/Ellipse.ts +6 -24
  481. package/src/utils/elements/Line.ts +1 -3
  482. package/src/utils/elements/Segment.ts +3 -14
  483. package/src/utils/intersections.ts +20 -65
  484. package/src/utils/maths.ts +10 -22
  485. package/src/utils/strings.ts +6 -16
  486. package/src/utils/unicode.ts +9 -22
  487. package/src/utils/validators.ts +9 -45
@@ -1,10 +1,7 @@
1
1
  import PDFDocument from '../PDFDocument';
2
2
  import PDFPage from '../PDFPage';
3
3
  import PDFFont from '../PDFFont';
4
- import PDFField, {
5
- FieldAppearanceOptions,
6
- assertFieldAppearanceOptions,
7
- } from './PDFField';
4
+ import PDFField, { FieldAppearanceOptions, assertFieldAppearanceOptions } from './PDFField';
8
5
  import {
9
6
  AppearanceProviderFor,
10
7
  normalizeAppearance,
@@ -22,12 +19,7 @@ import {
22
19
  AcroChoiceFlags,
23
20
  PDFWidgetAnnotation,
24
21
  } from '../../core';
25
- import {
26
- assertIs,
27
- assertIsSubset,
28
- assertOrUndefined,
29
- assertPositive,
30
- } from '../../utils';
22
+ import { assertIs, assertIsSubset, assertOrUndefined, assertPositive } from '../../utils';
31
23
 
32
24
  /**
33
25
  * Represents an option list field of a [[PDFForm]].
@@ -59,11 +51,7 @@ export default class PDFOptionList extends PDFField {
59
51
  /** The low-level PDFAcroListBox wrapped by this option list. */
60
52
  readonly acroField: PDFAcroListBox;
61
53
 
62
- private constructor(
63
- acroListBox: PDFAcroListBox,
64
- ref: PDFRef,
65
- doc: PDFDocument,
66
- ) {
54
+ private constructor(acroListBox: PDFAcroListBox, ref: PDFRef, doc: PDFDocument) {
67
55
  super(acroListBox, ref, doc);
68
56
 
69
57
  assertIs(acroListBox, 'acroListBox', [[PDFAcroListBox, 'PDFAcroListBox']]);
@@ -498,8 +486,7 @@ export default class PDFOptionList extends PDFField {
498
486
  const widgets = this.acroField.getWidgets();
499
487
  for (let idx = 0, len = widgets.length; idx < len; idx++) {
500
488
  const widget = widgets[idx];
501
- const hasAppearances =
502
- widget.getAppearances()?.normal instanceof PDFStream;
489
+ const hasAppearances = widget.getAppearances()?.normal instanceof PDFStream;
503
490
  if (!hasAppearances) return true;
504
491
  }
505
492
 
@@ -537,10 +524,7 @@ export default class PDFOptionList extends PDFField {
537
524
  * @param provider Optionally, the appearance provider to be used for
538
525
  * generating the contents of the appearance streams.
539
526
  */
540
- updateAppearances(
541
- font: PDFFont,
542
- provider?: AppearanceProviderFor<PDFOptionList>,
543
- ) {
527
+ updateAppearances(font: PDFFont, provider?: AppearanceProviderFor<PDFOptionList>) {
544
528
  assertIs(font, 'font', [[PDFFont, 'PDFFont']]);
545
529
  assertOrUndefined(provider, 'provider', [Function]);
546
530
 
@@ -1,9 +1,6 @@
1
1
  import PDFDocument from '../PDFDocument';
2
2
  import PDFPage from '../PDFPage';
3
- import PDFField, {
4
- FieldAppearanceOptions,
5
- assertFieldAppearanceOptions,
6
- } from './PDFField';
3
+ import PDFField, { FieldAppearanceOptions, assertFieldAppearanceOptions } from './PDFField';
7
4
  import {
8
5
  AppearanceProviderFor,
9
6
  normalizeAppearance,
@@ -54,25 +51,16 @@ export default class PDFRadioGroup extends PDFField {
54
51
  * @param ref The unique reference for this radio group.
55
52
  * @param doc The document to which this radio group will belong.
56
53
  */
57
- static of = (
58
- acroRadioButton: PDFAcroRadioButton,
59
- ref: PDFRef,
60
- doc: PDFDocument,
61
- ) => new PDFRadioGroup(acroRadioButton, ref, doc);
54
+ static of = (acroRadioButton: PDFAcroRadioButton, ref: PDFRef, doc: PDFDocument) =>
55
+ new PDFRadioGroup(acroRadioButton, ref, doc);
62
56
 
63
57
  /** The low-level PDFAcroRadioButton wrapped by this radio group. */
64
58
  readonly acroField: PDFAcroRadioButton;
65
59
 
66
- private constructor(
67
- acroRadioButton: PDFAcroRadioButton,
68
- ref: PDFRef,
69
- doc: PDFDocument,
70
- ) {
60
+ private constructor(acroRadioButton: PDFAcroRadioButton, ref: PDFRef, doc: PDFDocument) {
71
61
  super(acroRadioButton, ref, doc);
72
62
 
73
- assertIs(acroRadioButton, 'acroRadioButton', [
74
- [PDFAcroRadioButton, 'PDFAcroRadioButton'],
75
- ]);
63
+ assertIs(acroRadioButton, 'acroRadioButton', [[PDFAcroRadioButton, 'PDFAcroRadioButton']]);
76
64
 
77
65
  this.acroField = acroRadioButton;
78
66
  }
@@ -349,11 +337,7 @@ export default class PDFRadioGroup extends PDFField {
349
337
  * @param page The page to which the radio button widget should be added.
350
338
  * @param options The options to be used when adding the radio button widget.
351
339
  */
352
- addOptionToPage(
353
- option: string,
354
- page: PDFPage,
355
- options?: FieldAppearanceOptions,
356
- ) {
340
+ addOptionToPage(option: string, page: PDFPage, options?: FieldAppearanceOptions) {
357
341
  assertIs(option, 'option', ['string']);
358
342
  assertIs(page, 'page', [[PDFPage, 'PDFPage']]);
359
343
  assertFieldAppearanceOptions(options);
@@ -24,25 +24,16 @@ export default class PDFSignature extends PDFField {
24
24
  * @param ref The unique reference for this signature.
25
25
  * @param doc The document to which this signature will belong.
26
26
  */
27
- static of = (
28
- acroSignature: PDFAcroSignature,
29
- ref: PDFRef,
30
- doc: PDFDocument,
31
- ) => new PDFSignature(acroSignature, ref, doc);
27
+ static of = (acroSignature: PDFAcroSignature, ref: PDFRef, doc: PDFDocument) =>
28
+ new PDFSignature(acroSignature, ref, doc);
32
29
 
33
30
  /** The low-level PDFAcroSignature wrapped by this signature. */
34
31
  readonly acroField: PDFAcroSignature;
35
32
 
36
- private constructor(
37
- acroSignature: PDFAcroSignature,
38
- ref: PDFRef,
39
- doc: PDFDocument,
40
- ) {
33
+ private constructor(acroSignature: PDFAcroSignature, ref: PDFRef, doc: PDFDocument) {
41
34
  super(acroSignature, ref, doc);
42
35
 
43
- assertIs(acroSignature, 'acroSignature', [
44
- [PDFAcroSignature, 'PDFAcroSignature'],
45
- ]);
36
+ assertIs(acroSignature, 'acroSignature', [[PDFAcroSignature, 'PDFAcroSignature']]);
46
37
 
47
38
  this.acroField = acroSignature;
48
39
  }
@@ -2,10 +2,7 @@ import PDFDocument from '../PDFDocument';
2
2
  import PDFPage from '../PDFPage';
3
3
  import PDFFont from '../PDFFont';
4
4
  import PDFImage from '../PDFImage';
5
- import PDFField, {
6
- FieldAppearanceOptions,
7
- assertFieldAppearanceOptions,
8
- } from './PDFField';
5
+ import PDFField, { FieldAppearanceOptions, assertFieldAppearanceOptions } from './PDFField';
9
6
  import {
10
7
  AppearanceProviderFor,
11
8
  normalizeAppearance,
@@ -13,11 +10,7 @@ import {
13
10
  } from './appearances';
14
11
  import { rgb } from '../colors';
15
12
  import { degrees } from '../rotations';
16
- import {
17
- RichTextFieldReadError,
18
- ExceededMaxLengthError,
19
- InvalidMaxLengthError,
20
- } from '../errors';
13
+ import { RichTextFieldReadError, ExceededMaxLengthError, InvalidMaxLengthError } from '../errors';
21
14
  import { ImageAlignment } from '../image/alignment';
22
15
  import { TextAlignment } from '../text/alignment';
23
16
 
@@ -305,11 +298,7 @@ export default class PDFTextField extends PDFField {
305
298
  const widgets = this.acroField.getWidgets();
306
299
  for (let idx = 0, len = widgets.length; idx < len; idx++) {
307
300
  const widget = widgets[idx];
308
- const streamRef = this.createImageAppearanceStream(
309
- widget,
310
- image,
311
- alignment,
312
- );
301
+ const streamRef = this.createImageAppearanceStream(widget, image, alignment);
313
302
  this.updateWidgetAppearances(widget, { normal: streamRef });
314
303
  }
315
304
 
@@ -760,8 +749,7 @@ export default class PDFTextField extends PDFField {
760
749
  const widgets = this.acroField.getWidgets();
761
750
  for (let idx = 0, len = widgets.length; idx < len; idx++) {
762
751
  const widget = widgets[idx];
763
- const hasAppearances =
764
- widget.getAppearances()?.normal instanceof PDFStream;
752
+ const hasAppearances = widget.getAppearances()?.normal instanceof PDFStream;
765
753
  if (!hasAppearances) return true;
766
754
  }
767
755
 
@@ -799,10 +787,7 @@ export default class PDFTextField extends PDFField {
799
787
  * @param provider Optionally, the appearance provider to be used for
800
788
  * generating the contents of the appearance streams.
801
789
  */
802
- updateAppearances(
803
- font: PDFFont,
804
- provider?: AppearanceProviderFor<PDFTextField>,
805
- ) {
790
+ updateAppearances(font: PDFFont, provider?: AppearanceProviderFor<PDFTextField>) {
806
791
  assertIs(font, 'font', [[PDFFont, 'PDFFont']]);
807
792
  assertOrUndefined(provider, 'provider', [Function]);
808
793
 
@@ -16,14 +16,7 @@ import {
16
16
  drawTextField,
17
17
  drawOptionList,
18
18
  } from '../operations';
19
- import {
20
- rgb,
21
- componentsToColor,
22
- setFillingColor,
23
- grayscale,
24
- cmyk,
25
- Color,
26
- } from '../colors';
19
+ import { rgb, componentsToColor, setFillingColor, grayscale, cmyk, Color } from '../colors';
27
20
  import { reduceRotation, adjustDimsForRotation } from '../rotations';
28
21
  import {
29
22
  layoutMultilineText,
@@ -114,9 +107,7 @@ export const normalizeAppearance = <T extends Object>(
114
107
  // `/HeBo 8.00 Tf` -> ['/HeBo 8 Tf', 'HeBo', '8.00']
115
108
  const tfRegex = /\/([^\s]+)\s+(\d+(?:\.\d+)?)\s+Tf/;
116
109
 
117
- const getDefaultFontSize = (field: {
118
- getDefaultAppearance(): string | undefined;
119
- }) => {
110
+ const getDefaultFontSize = (field: { getDefaultAppearance(): string | undefined }) => {
120
111
  const da = field.getDefaultAppearance() ?? '';
121
112
  const daMatch = findLastMatch(da, tfRegex).match ?? [];
122
113
  const defaultFontSize = Number(daMatch[2]);
@@ -127,11 +118,10 @@ const getDefaultFontSize = (field: {
127
118
  // `0.3 g` -> ['0.3', 'g']
128
119
  // `0.3 1 .3 rg` -> ['0.3', '1', '.3', 'rg']
129
120
  // `0.3 1 .3 0 k` -> ['0.3', '1', '.3', '0', 'k']
130
- const colorRegex = /(\d+(?:\.\d+)?)\s*(\d+(?:\.\d+)?)?\s*(\d+(?:\.\d+)?)?\s*(\d+(?:\.\d+)?)?\s+(g|rg|k)/;
121
+ const colorRegex =
122
+ /(\d+(?:\.\d+)?)\s*(\d+(?:\.\d+)?)?\s*(\d+(?:\.\d+)?)?\s*(\d+(?:\.\d+)?)?\s+(g|rg|k)/;
131
123
 
132
- const getDefaultColor = (field: {
133
- getDefaultAppearance(): string | undefined;
134
- }) => {
124
+ const getDefaultColor = (field: { getDefaultAppearance(): string | undefined }) => {
135
125
  const da = field.getDefaultAppearance() ?? '';
136
126
  const daMatch = findLastMatch(da, colorRegex).match;
137
127
 
@@ -163,9 +153,10 @@ const updateDefaultAppearance = (
163
153
  field.setDefaultAppearance(da);
164
154
  };
165
155
 
166
- export const defaultCheckBoxAppearanceProvider: AppearanceProviderFor<
167
- PDFCheckBox
168
- > = (checkBox, widget) => {
156
+ export const defaultCheckBoxAppearanceProvider: AppearanceProviderFor<PDFCheckBox> = (
157
+ checkBox,
158
+ widget,
159
+ ) => {
169
160
  // The `/DA` entry can be at the widget or field level - so we handle both
170
161
  const widgetColor = getDefaultColor(widget);
171
162
  const fieldColor = getDefaultColor(checkBox.acroField);
@@ -244,9 +235,10 @@ export const defaultCheckBoxAppearanceProvider: AppearanceProviderFor<
244
235
  };
245
236
  };
246
237
 
247
- export const defaultRadioGroupAppearanceProvider: AppearanceProviderFor<
248
- PDFRadioGroup
249
- > = (radioGroup, widget) => {
238
+ export const defaultRadioGroupAppearanceProvider: AppearanceProviderFor<PDFRadioGroup> = (
239
+ radioGroup,
240
+ widget,
241
+ ) => {
250
242
  // The `/DA` entry can be at the widget or field level - so we handle both
251
243
  const widgetColor = getDefaultColor(widget);
252
244
  const fieldColor = getDefaultColor(radioGroup.acroField);
@@ -324,9 +316,11 @@ export const defaultRadioGroupAppearanceProvider: AppearanceProviderFor<
324
316
  };
325
317
  };
326
318
 
327
- export const defaultButtonAppearanceProvider: AppearanceProviderFor<
328
- PDFButton
329
- > = (button, widget, font) => {
319
+ export const defaultButtonAppearanceProvider: AppearanceProviderFor<PDFButton> = (
320
+ button,
321
+ widget,
322
+ font,
323
+ ) => {
330
324
  // The `/DA` entry can be at the widget or field level - so we handle both
331
325
  const widgetColor = getDefaultColor(widget);
332
326
  const fieldColor = getDefaultColor(button.acroField);
@@ -412,9 +406,11 @@ export const defaultButtonAppearanceProvider: AppearanceProviderFor<
412
406
  };
413
407
  };
414
408
 
415
- export const defaultTextFieldAppearanceProvider: AppearanceProviderFor<
416
- PDFTextField
417
- > = (textField, widget, font) => {
409
+ export const defaultTextFieldAppearanceProvider: AppearanceProviderFor<PDFTextField> = (
410
+ textField,
411
+ widget,
412
+ font,
413
+ ) => {
418
414
  // The `/DA` entry can be at the widget or field level - so we handle both
419
415
  const widgetColor = getDefaultColor(widget);
420
416
  const fieldColor = getDefaultColor(textField.acroField);
@@ -502,9 +498,11 @@ export const defaultTextFieldAppearanceProvider: AppearanceProviderFor<
502
498
  return [...rotate, ...drawTextField(options)];
503
499
  };
504
500
 
505
- export const defaultDropdownAppearanceProvider: AppearanceProviderFor<
506
- PDFDropdown
507
- > = (dropdown, widget, font) => {
501
+ export const defaultDropdownAppearanceProvider: AppearanceProviderFor<PDFDropdown> = (
502
+ dropdown,
503
+ widget,
504
+ font,
505
+ ) => {
508
506
  // The `/DA` entry can be at the widget or field level - so we handle both
509
507
  const widgetColor = getDefaultColor(widget);
510
508
  const fieldColor = getDefaultColor(dropdown.acroField);
@@ -567,9 +565,11 @@ export const defaultDropdownAppearanceProvider: AppearanceProviderFor<
567
565
  return [...rotate, ...drawTextField(options)];
568
566
  };
569
567
 
570
- export const defaultOptionListAppearanceProvider: AppearanceProviderFor<
571
- PDFOptionList
572
- > = (optionList, widget, font) => {
568
+ export const defaultOptionListAppearanceProvider: AppearanceProviderFor<PDFOptionList> = (
569
+ optionList,
570
+ widget,
571
+ font,
572
+ ) => {
573
573
  // The `/DA` entry can be at the widget or field level - so we handle both
574
574
  const widgetColor = getDefaultColor(widget);
575
575
  const fieldColor = getDefaultColor(optionList.acroField);
@@ -39,7 +39,7 @@ import { Rotation, degrees, toRadians } from './rotations';
39
39
  import { svgPathToOperators } from './svgPath';
40
40
  import { PDFHexString, PDFName, PDFNumber, PDFOperator } from '../core';
41
41
  import { asNumber } from './objects';
42
- import type { Space, TransformationMatrix } from '../types'
42
+ import type { Space, TransformationMatrix } from '../types';
43
43
 
44
44
  export interface DrawTextOptions {
45
45
  color: Color;
@@ -55,27 +55,18 @@ export interface DrawTextOptions {
55
55
  clipSpaces?: Space[];
56
56
  }
57
57
 
58
- const clipSpace = ({
59
- topLeft,
60
- topRight,
61
- bottomRight,
62
- bottomLeft
63
- }: Space) =>
64
- [
65
- moveTo(topLeft.x, topLeft.y),
66
- lineTo(topRight.x, topRight.y),
67
- lineTo(bottomRight.x, bottomRight.y),
68
- lineTo(bottomLeft.x, bottomLeft.y),
69
- closePath(),
70
- clip(),
71
- endPath(),
72
- ]
73
- const clipSpaces = (spaces: Space[]) => spaces.flatMap(clipSpace)
74
-
75
- export const drawText = (
76
- line: PDFHexString,
77
- options: DrawTextOptions,
78
- ): PDFOperator[] =>
58
+ const clipSpace = ({ topLeft, topRight, bottomRight, bottomLeft }: Space) => [
59
+ moveTo(topLeft.x, topLeft.y),
60
+ lineTo(topRight.x, topRight.y),
61
+ lineTo(bottomRight.x, bottomRight.y),
62
+ lineTo(bottomLeft.x, bottomLeft.y),
63
+ closePath(),
64
+ clip(),
65
+ endPath(),
66
+ ];
67
+ const clipSpaces = (spaces: Space[]) => spaces.flatMap(clipSpace);
68
+
69
+ export const drawText = (line: PDFHexString, options: DrawTextOptions): PDFOperator[] =>
79
70
  [
80
71
  pushGraphicsState(),
81
72
  options.graphicsState && setGraphicsState(options.graphicsState),
@@ -228,7 +219,7 @@ export const drawRectangle = (options: {
228
219
  radius?: number | PDFNumber;
229
220
  }) => {
230
221
  let ops = [];
231
-
222
+
232
223
  if (!options.radius || asNumber(options.radius) <= 0) {
233
224
  ops = [
234
225
  moveTo(0, 0),
@@ -252,7 +243,14 @@ export const drawRectangle = (options: {
252
243
  lineTo(width - radius, 0),
253
244
  appendBezierCurve(width - radius + offset, 0, width, radius - offset, width, radius),
254
245
  lineTo(width, height - radius),
255
- appendBezierCurve(width, height - radius + offset, width - radius + offset, height, width - radius, height),
246
+ appendBezierCurve(
247
+ width,
248
+ height - radius + offset,
249
+ width - radius + offset,
250
+ height,
251
+ width - radius,
252
+ height,
253
+ ),
256
254
  lineTo(radius, height),
257
255
  appendBezierCurve(radius - offset, height, 0, height - radius + offset, 0, height - radius),
258
256
  closePath(),
@@ -283,7 +281,7 @@ export const drawRectangle = (options: {
283
281
 
284
282
  popGraphicsState(),
285
283
  ].filter(Boolean) as PDFOperator[];
286
- }
284
+ };
287
285
 
288
286
  const KAPPA = 4.0 * ((Math.sqrt(2) - 1.0) / 3.0);
289
287
 
@@ -1,12 +1,6 @@
1
1
  import { asNumber, asPDFName, asPDFNumber } from './objects';
2
2
  import { degreesToRadians } from './rotations';
3
- import {
4
- PDFHexString,
5
- PDFName,
6
- PDFNumber,
7
- PDFOperator,
8
- PDFOperatorNames as Ops,
9
- } from '../core';
3
+ import { PDFHexString, PDFName, PDFNumber, PDFOperator, PDFOperatorNames as Ops } from '../core';
10
4
 
11
5
  /* ==================== Clipping Path Operators ==================== */
12
6
 
@@ -53,32 +47,13 @@ export const rotateRadians = (angle: number | PDFNumber) =>
53
47
  export const rotateDegrees = (angle: number | PDFNumber) =>
54
48
  rotateRadians(degreesToRadians(asNumber(angle)));
55
49
 
56
- export const skewRadians = (
57
- xSkewAngle: number | PDFNumber,
58
- ySkewAngle: number | PDFNumber,
59
- ) =>
60
- concatTransformationMatrix(
61
- 1,
62
- tan(asNumber(xSkewAngle)),
63
- tan(asNumber(ySkewAngle)),
64
- 1,
65
- 0,
66
- 0,
67
- );
50
+ export const skewRadians = (xSkewAngle: number | PDFNumber, ySkewAngle: number | PDFNumber) =>
51
+ concatTransformationMatrix(1, tan(asNumber(xSkewAngle)), tan(asNumber(ySkewAngle)), 1, 0, 0);
68
52
 
69
- export const skewDegrees = (
70
- xSkewAngle: number | PDFNumber,
71
- ySkewAngle: number | PDFNumber,
72
- ) =>
73
- skewRadians(
74
- degreesToRadians(asNumber(xSkewAngle)),
75
- degreesToRadians(asNumber(ySkewAngle)),
76
- );
53
+ export const skewDegrees = (xSkewAngle: number | PDFNumber, ySkewAngle: number | PDFNumber) =>
54
+ skewRadians(degreesToRadians(asNumber(xSkewAngle)), degreesToRadians(asNumber(ySkewAngle)));
77
55
 
78
- export const setDashPattern = (
79
- dashArray: (number | PDFNumber)[],
80
- dashPhase: number | PDFNumber,
81
- ) =>
56
+ export const setDashPattern = (dashArray: (number | PDFNumber)[], dashPhase: number | PDFNumber) =>
82
57
  PDFOperator.of(Ops.SetLineDashPattern, [
83
58
  `[${dashArray.map(asPDFNumber).join(' ')}]`,
84
59
  asPDFNumber(dashPhase),
@@ -187,7 +162,7 @@ export const stroke = () => PDFOperator.of(Ops.StrokePath);
187
162
 
188
163
  export enum FillRule {
189
164
  NonZero = 'f',
190
- EvenOdd = 'f*'
165
+ EvenOdd = 'f*',
191
166
  }
192
167
 
193
168
  export const fill = () => PDFOperator.of(Ops.FillNonZero);
@@ -207,18 +182,15 @@ export const moveText = (x: number | PDFNumber, y: number | PDFNumber) =>
207
182
 
208
183
  /* ==================== Text Showing Operators ==================== */
209
184
 
210
- export const showText = (text: PDFHexString) =>
211
- PDFOperator.of(Ops.ShowText, [text]);
185
+ export const showText = (text: PDFHexString) => PDFOperator.of(Ops.ShowText, [text]);
212
186
 
213
187
  /* ==================== Text State Operators ==================== */
214
188
 
215
189
  export const beginText = () => PDFOperator.of(Ops.BeginText);
216
190
  export const endText = () => PDFOperator.of(Ops.EndText);
217
191
 
218
- export const setFontAndSize = (
219
- name: string | PDFName,
220
- size: number | PDFNumber,
221
- ) => PDFOperator.of(Ops.SetFontAndSize, [asPDFName(name), asPDFNumber(size)]);
192
+ export const setFontAndSize = (name: string | PDFName, size: number | PDFNumber) =>
193
+ PDFOperator.of(Ops.SetFontAndSize, [asPDFName(name), asPDFNumber(size)]);
222
194
 
223
195
  export const setCharacterSpacing = (spacing: number | PDFNumber) =>
224
196
  PDFOperator.of(Ops.SetCharacterSpacing, [asPDFNumber(spacing)]);
@@ -327,11 +299,7 @@ export const setStrokingRgbColor = (
327
299
  green: number | PDFNumber,
328
300
  blue: number | PDFNumber,
329
301
  ) =>
330
- PDFOperator.of(Ops.StrokingColorRgb, [
331
- asPDFNumber(red),
332
- asPDFNumber(green),
333
- asPDFNumber(blue),
334
- ]);
302
+ PDFOperator.of(Ops.StrokingColorRgb, [asPDFNumber(red), asPDFNumber(green), asPDFNumber(blue)]);
335
303
 
336
304
  export const setFillingCmykColor = (
337
305
  cyan: number | PDFNumber,
@@ -53,10 +53,7 @@ export const reduceRotation = (degreeAngle = 0) => {
53
53
  return 0; // `degreeAngle` is not a multiple of 90
54
54
  };
55
55
 
56
- export const adjustDimsForRotation = (
57
- dims: { width: number; height: number },
58
- degreeAngle = 0,
59
- ) => {
56
+ export const adjustDimsForRotation = (dims: { width: number; height: number }, degreeAngle = 0) => {
60
57
  const rotation = reduceRotation(degreeAngle);
61
58
  return rotation === 90 || rotation === 270
62
59
  ? { width: dims.height, height: dims.width }