@pdfme/pdf-lib 1.17.3 → 1.18.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.
- package/README.md +43 -23
- package/cjs/api/PDFDocument.d.ts +11 -11
- package/cjs/api/PDFDocument.d.ts.map +1 -1
- package/cjs/api/PDFDocument.js +382 -523
- package/cjs/api/PDFDocument.js.map +1 -1
- package/cjs/api/PDFDocumentOptions.d.ts +3 -2
- package/cjs/api/PDFDocumentOptions.d.ts.map +1 -1
- package/cjs/api/PDFEmbeddedFile.d.ts +4 -4
- package/cjs/api/PDFEmbeddedFile.d.ts.map +1 -1
- package/cjs/api/PDFEmbeddedFile.js +49 -61
- package/cjs/api/PDFEmbeddedFile.js.map +1 -1
- package/cjs/api/PDFEmbeddedPage.d.ts +3 -3
- package/cjs/api/PDFEmbeddedPage.d.ts.map +1 -1
- package/cjs/api/PDFEmbeddedPage.js +35 -46
- package/cjs/api/PDFEmbeddedPage.js.map +1 -1
- package/cjs/api/PDFFont.d.ts +3 -3
- package/cjs/api/PDFFont.d.ts.map +1 -1
- package/cjs/api/PDFFont.js +47 -57
- package/cjs/api/PDFFont.js.map +1 -1
- package/cjs/api/PDFImage.d.ts +3 -3
- package/cjs/api/PDFImage.d.ts.map +1 -1
- package/cjs/api/PDFImage.js +50 -62
- package/cjs/api/PDFImage.js.map +1 -1
- package/cjs/api/PDFJavaScript.d.ts +4 -4
- package/cjs/api/PDFJavaScript.d.ts.map +1 -1
- package/cjs/api/PDFJavaScript.js +38 -50
- package/cjs/api/PDFJavaScript.js.map +1 -1
- package/cjs/api/PDFPage.d.ts +21 -9
- package/cjs/api/PDFPage.d.ts.map +1 -1
- package/cjs/api/PDFPage.js +437 -426
- package/cjs/api/PDFPage.js.map +1 -1
- package/cjs/api/PDFPageOptions.d.ts +15 -4
- package/cjs/api/PDFPageOptions.d.ts.map +1 -1
- package/cjs/api/colors.d.ts +4 -0
- package/cjs/api/colors.d.ts.map +1 -1
- package/cjs/api/colors.js +52 -43
- package/cjs/api/colors.js.map +1 -1
- package/cjs/api/errors.js +73 -130
- package/cjs/api/errors.js.map +1 -1
- package/cjs/api/form/PDFButton.d.ts +8 -8
- package/cjs/api/form/PDFButton.d.ts.map +1 -1
- package/cjs/api/form/PDFButton.js +68 -72
- package/cjs/api/form/PDFButton.js.map +1 -1
- package/cjs/api/form/PDFCheckBox.d.ts +5 -5
- package/cjs/api/form/PDFCheckBox.d.ts.map +1 -1
- package/cjs/api/form/PDFCheckBox.js +64 -69
- package/cjs/api/form/PDFCheckBox.js.map +1 -1
- package/cjs/api/form/PDFDropdown.d.ts +6 -6
- package/cjs/api/form/PDFDropdown.d.ts.map +1 -1
- package/cjs/api/form/PDFDropdown.js +126 -132
- package/cjs/api/form/PDFDropdown.js.map +1 -1
- package/cjs/api/form/PDFField.d.ts +6 -6
- package/cjs/api/form/PDFField.d.ts.map +1 -1
- package/cjs/api/form/PDFField.js +118 -123
- package/cjs/api/form/PDFField.js.map +1 -1
- package/cjs/api/form/PDFForm.d.ts +11 -11
- package/cjs/api/form/PDFForm.d.ts.map +1 -1
- package/cjs/api/form/PDFForm.js +218 -217
- package/cjs/api/form/PDFForm.js.map +1 -1
- package/cjs/api/form/PDFOptionList.d.ts +6 -6
- package/cjs/api/form/PDFOptionList.d.ts.map +1 -1
- package/cjs/api/form/PDFOptionList.js +115 -121
- package/cjs/api/form/PDFOptionList.js.map +1 -1
- package/cjs/api/form/PDFRadioGroup.d.ts +5 -5
- package/cjs/api/form/PDFRadioGroup.d.ts.map +1 -1
- package/cjs/api/form/PDFRadioGroup.js +98 -101
- package/cjs/api/form/PDFRadioGroup.js.map +1 -1
- package/cjs/api/form/PDFSignature.d.ts +3 -3
- package/cjs/api/form/PDFSignature.d.ts.map +1 -1
- package/cjs/api/form/PDFSignature.js +25 -28
- package/cjs/api/form/PDFSignature.js.map +1 -1
- package/cjs/api/form/PDFTextField.d.ts +8 -8
- package/cjs/api/form/PDFTextField.d.ts.map +1 -1
- package/cjs/api/form/PDFTextField.js +136 -141
- package/cjs/api/form/PDFTextField.js.map +1 -1
- package/cjs/api/form/appearances.d.ts +11 -11
- package/cjs/api/form/appearances.d.ts.map +1 -1
- package/cjs/api/form/appearances.js +257 -219
- package/cjs/api/form/appearances.js.map +1 -1
- package/cjs/api/form/index.d.ts +10 -10
- package/cjs/api/form/index.d.ts.map +1 -1
- package/cjs/api/form/index.js +12 -11
- package/cjs/api/form/index.js.map +1 -1
- package/cjs/api/image/index.d.ts +1 -1
- package/cjs/api/image/index.d.ts.map +1 -1
- package/cjs/api/image/index.js +2 -2
- package/cjs/api/image/index.js.map +1 -1
- package/cjs/api/index.d.ts +20 -20
- package/cjs/api/index.d.ts.map +1 -1
- package/cjs/api/index.js +21 -20
- package/cjs/api/index.js.map +1 -1
- package/cjs/api/objects.d.ts +1 -1
- package/cjs/api/objects.d.ts.map +1 -1
- package/cjs/api/objects.js +7 -10
- package/cjs/api/objects.js.map +1 -1
- package/cjs/api/operations.d.ts +5 -4
- package/cjs/api/operations.d.ts.map +1 -1
- package/cjs/api/operations.js +361 -347
- package/cjs/api/operations.js.map +1 -1
- package/cjs/api/operators.d.ts +6 -1
- package/cjs/api/operators.d.ts.map +1 -1
- package/cjs/api/operators.js +169 -183
- package/cjs/api/operators.js.map +1 -1
- package/cjs/api/rotations.d.ts +1 -1
- package/cjs/api/rotations.d.ts.map +1 -1
- package/cjs/api/rotations.js +31 -30
- package/cjs/api/rotations.js.map +1 -1
- package/cjs/api/svg.d.ts +65 -0
- package/cjs/api/svg.d.ts.map +1 -0
- package/cjs/api/svg.js +1338 -0
- package/cjs/api/svg.js.map +1 -0
- package/cjs/api/svgPath.d.ts +1 -1
- package/cjs/api/svgPath.d.ts.map +1 -1
- package/cjs/api/svgPath.js +115 -118
- package/cjs/api/svgPath.js.map +1 -1
- package/cjs/api/text/index.d.ts +2 -2
- package/cjs/api/text/index.d.ts.map +1 -1
- package/cjs/api/text/index.js +3 -3
- package/cjs/api/text/index.js.map +1 -1
- package/cjs/api/text/layout.d.ts +3 -3
- package/cjs/api/text/layout.d.ts.map +1 -1
- package/cjs/api/text/layout.js +87 -88
- package/cjs/api/text/layout.js.map +1 -1
- package/cjs/core/PDFContext.d.ts +17 -16
- package/cjs/core/PDFContext.d.ts.map +1 -1
- package/cjs/core/PDFContext.js +84 -101
- package/cjs/core/PDFContext.js.map +1 -1
- package/cjs/core/PDFObjectCopier.d.ts +2 -2
- package/cjs/core/PDFObjectCopier.d.ts.map +1 -1
- package/cjs/core/PDFObjectCopier.js +58 -62
- package/cjs/core/PDFObjectCopier.js.map +1 -1
- package/cjs/core/acroform/PDFAcroButton.d.ts +7 -7
- package/cjs/core/acroform/PDFAcroButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroButton.js +42 -47
- package/cjs/core/acroform/PDFAcroButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroCheckBox.d.ts +5 -5
- package/cjs/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroCheckBox.js +28 -35
- package/cjs/core/acroform/PDFAcroCheckBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroChoice.d.ts +4 -4
- package/cjs/core/acroform/PDFAcroChoice.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroChoice.js +47 -60
- package/cjs/core/acroform/PDFAcroChoice.js.map +1 -1
- package/cjs/core/acroform/PDFAcroComboBox.d.ts +4 -4
- package/cjs/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroComboBox.js +15 -22
- package/cjs/core/acroform/PDFAcroComboBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroField.d.ts +8 -8
- package/cjs/core/acroform/PDFAcroField.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroField.js +80 -81
- package/cjs/core/acroform/PDFAcroField.js.map +1 -1
- package/cjs/core/acroform/PDFAcroForm.d.ts +5 -5
- package/cjs/core/acroform/PDFAcroForm.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroForm.js +46 -47
- package/cjs/core/acroform/PDFAcroForm.js.map +1 -1
- package/cjs/core/acroform/PDFAcroListBox.d.ts +4 -4
- package/cjs/core/acroform/PDFAcroListBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroListBox.js +13 -20
- package/cjs/core/acroform/PDFAcroListBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroNonTerminal.d.ts +4 -4
- package/cjs/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroNonTerminal.js +18 -25
- package/cjs/core/acroform/PDFAcroNonTerminal.js.map +1 -1
- package/cjs/core/acroform/PDFAcroPushButton.d.ts +4 -4
- package/cjs/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroPushButton.js +15 -22
- package/cjs/core/acroform/PDFAcroPushButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroRadioButton.d.ts +5 -5
- package/cjs/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroRadioButton.js +33 -40
- package/cjs/core/acroform/PDFAcroRadioButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroSignature.d.ts +3 -3
- package/cjs/core/acroform/PDFAcroSignature.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroSignature.js +5 -12
- package/cjs/core/acroform/PDFAcroSignature.js.map +1 -1
- package/cjs/core/acroform/PDFAcroTerminal.d.ts +5 -5
- package/cjs/core/acroform/PDFAcroTerminal.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroTerminal.js +28 -35
- package/cjs/core/acroform/PDFAcroTerminal.js.map +1 -1
- package/cjs/core/acroform/PDFAcroText.d.ts +7 -7
- package/cjs/core/acroform/PDFAcroText.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroText.js +40 -45
- package/cjs/core/acroform/PDFAcroText.js.map +1 -1
- package/cjs/core/acroform/flags.js +1 -1
- package/cjs/core/acroform/flags.js.map +1 -1
- package/cjs/core/acroform/index.d.ts +15 -15
- package/cjs/core/acroform/index.d.ts.map +1 -1
- package/cjs/core/acroform/index.js +17 -16
- package/cjs/core/acroform/index.js.map +1 -1
- package/cjs/core/acroform/utils.d.ts +4 -4
- package/cjs/core/acroform/utils.d.ts.map +1 -1
- package/cjs/core/acroform/utils.js +48 -48
- package/cjs/core/acroform/utils.js.map +1 -1
- package/cjs/core/annotation/AppearanceCharacteristics.d.ts +5 -5
- package/cjs/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
- package/cjs/core/annotation/AppearanceCharacteristics.js +61 -64
- package/cjs/core/annotation/AppearanceCharacteristics.js.map +1 -1
- package/cjs/core/annotation/BorderStyle.d.ts +2 -2
- package/cjs/core/annotation/BorderStyle.d.ts.map +1 -1
- package/cjs/core/annotation/BorderStyle.js +15 -16
- package/cjs/core/annotation/BorderStyle.js.map +1 -1
- package/cjs/core/annotation/PDFAnnotation.d.ts +6 -6
- package/cjs/core/annotation/PDFAnnotation.d.ts.map +1 -1
- package/cjs/core/annotation/PDFAnnotation.js +76 -77
- package/cjs/core/annotation/PDFAnnotation.js.map +1 -1
- package/cjs/core/annotation/PDFWidgetAnnotation.d.ts +9 -9
- package/cjs/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
- package/cjs/core/annotation/PDFWidgetAnnotation.js +60 -67
- package/cjs/core/annotation/PDFWidgetAnnotation.js.map +1 -1
- package/cjs/core/annotation/flags.js +1 -1
- package/cjs/core/annotation/flags.js.map +1 -1
- package/cjs/core/annotation/index.d.ts +4 -4
- package/cjs/core/annotation/index.d.ts.map +1 -1
- package/cjs/core/annotation/index.js +6 -5
- package/cjs/core/annotation/index.js.map +1 -1
- package/cjs/core/crypto.d.ts +96 -0
- package/cjs/core/crypto.d.ts.map +1 -0
- package/cjs/core/crypto.js +1619 -0
- package/cjs/core/crypto.js.map +1 -0
- package/cjs/core/document/PDFCrossRefSection.d.ts +1 -1
- package/cjs/core/document/PDFCrossRefSection.d.ts.map +1 -1
- package/cjs/core/document/PDFCrossRefSection.js +62 -65
- package/cjs/core/document/PDFCrossRefSection.js.map +1 -1
- package/cjs/core/document/PDFHeader.js +18 -21
- package/cjs/core/document/PDFHeader.js.map +1 -1
- package/cjs/core/document/PDFTrailer.js +16 -19
- package/cjs/core/document/PDFTrailer.js.map +1 -1
- package/cjs/core/document/PDFTrailerDict.d.ts +1 -1
- package/cjs/core/document/PDFTrailerDict.d.ts.map +1 -1
- package/cjs/core/document/PDFTrailerDict.js +14 -15
- package/cjs/core/document/PDFTrailerDict.js.map +1 -1
- package/cjs/core/embedders/CMap.d.ts +1 -1
- package/cjs/core/embedders/CMap.d.ts.map +1 -1
- package/cjs/core/embedders/CMap.js +41 -28
- package/cjs/core/embedders/CMap.js.map +1 -1
- package/cjs/core/embedders/CustomFontEmbedder.d.ts +5 -5
- package/cjs/core/embedders/CustomFontEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/CustomFontEmbedder.js +132 -177
- package/cjs/core/embedders/CustomFontEmbedder.js.map +1 -1
- package/cjs/core/embedders/CustomFontSubsetEmbedder.d.ts +3 -3
- package/cjs/core/embedders/CustomFontSubsetEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/CustomFontSubsetEmbedder.js +40 -51
- package/cjs/core/embedders/CustomFontSubsetEmbedder.js.map +1 -1
- package/cjs/core/embedders/FileEmbedder.d.ts +2 -2
- package/cjs/core/embedders/FileEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/FileEmbedder.js +40 -47
- package/cjs/core/embedders/FileEmbedder.js.map +1 -1
- package/cjs/core/embedders/FontFlags.d.ts +1 -1
- package/cjs/core/embedders/FontFlags.d.ts.map +1 -1
- package/cjs/core/embedders/FontFlags.js +7 -6
- package/cjs/core/embedders/FontFlags.js.map +1 -1
- package/cjs/core/embedders/JavaScriptEmbedder.d.ts +2 -2
- package/cjs/core/embedders/JavaScriptEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/JavaScriptEmbedder.js +21 -26
- package/cjs/core/embedders/JavaScriptEmbedder.js.map +1 -1
- package/cjs/core/embedders/JpegEmbedder.d.ts +2 -2
- package/cjs/core/embedders/JpegEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/JpegEmbedder.js +64 -71
- package/cjs/core/embedders/JpegEmbedder.js.map +1 -1
- package/cjs/core/embedders/PDFPageEmbedder.d.ts +4 -4
- package/cjs/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/PDFPageEmbedder.js +55 -61
- package/cjs/core/embedders/PDFPageEmbedder.js.map +1 -1
- package/cjs/core/embedders/PngEmbedder.d.ts +2 -2
- package/cjs/core/embedders/PngEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/PngEmbedder.js +32 -40
- package/cjs/core/embedders/PngEmbedder.js.map +1 -1
- package/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -3
- package/cjs/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/StandardFontEmbedder.js +46 -50
- package/cjs/core/embedders/StandardFontEmbedder.js.map +1 -1
- package/cjs/core/errors.d.ts +1 -1
- package/cjs/core/errors.d.ts.map +1 -1
- package/cjs/core/errors.js +147 -260
- package/cjs/core/errors.js.map +1 -1
- package/cjs/core/index.d.ts +47 -47
- package/cjs/core/index.d.ts.map +1 -1
- package/cjs/core/index.js +48 -47
- package/cjs/core/index.js.map +1 -1
- package/cjs/core/interactive/ViewerPreferences.d.ts +6 -6
- package/cjs/core/interactive/ViewerPreferences.d.ts.map +1 -1
- package/cjs/core/interactive/ViewerPreferences.js +135 -138
- package/cjs/core/interactive/ViewerPreferences.js.map +1 -1
- package/cjs/core/objects/PDFArray.d.ts +12 -12
- package/cjs/core/objects/PDFArray.d.ts.map +1 -1
- package/cjs/core/objects/PDFArray.js +72 -81
- package/cjs/core/objects/PDFArray.js.map +1 -1
- package/cjs/core/objects/PDFBool.d.ts +1 -1
- package/cjs/core/objects/PDFBool.d.ts.map +1 -1
- package/cjs/core/objects/PDFBool.js +22 -26
- package/cjs/core/objects/PDFBool.js.map +1 -1
- package/cjs/core/objects/PDFDict.d.ts +12 -11
- package/cjs/core/objects/PDFDict.d.ts.map +1 -1
- package/cjs/core/objects/PDFDict.js +74 -86
- package/cjs/core/objects/PDFDict.js.map +1 -1
- package/cjs/core/objects/PDFHexString.d.ts +1 -1
- package/cjs/core/objects/PDFHexString.d.ts.map +1 -1
- package/cjs/core/objects/PDFHexString.js +49 -52
- package/cjs/core/objects/PDFHexString.js.map +1 -1
- package/cjs/core/objects/PDFInvalidObject.d.ts +1 -1
- package/cjs/core/objects/PDFInvalidObject.d.ts.map +1 -1
- package/cjs/core/objects/PDFInvalidObject.js +19 -22
- package/cjs/core/objects/PDFInvalidObject.js.map +1 -1
- package/cjs/core/objects/PDFName.d.ts +1 -1
- package/cjs/core/objects/PDFName.d.ts.map +1 -1
- package/cjs/core/objects/PDFName.js +84 -92
- package/cjs/core/objects/PDFName.js.map +1 -1
- package/cjs/core/objects/PDFNull.d.ts +1 -1
- package/cjs/core/objects/PDFNull.d.ts.map +1 -1
- package/cjs/core/objects/PDFNull.js +15 -20
- package/cjs/core/objects/PDFNull.js.map +1 -1
- package/cjs/core/objects/PDFNumber.d.ts +1 -1
- package/cjs/core/objects/PDFNumber.d.ts.map +1 -1
- package/cjs/core/objects/PDFNumber.js +23 -26
- package/cjs/core/objects/PDFNumber.js.map +1 -1
- package/cjs/core/objects/PDFObject.d.ts +1 -1
- package/cjs/core/objects/PDFObject.d.ts.map +1 -1
- package/cjs/core/objects/PDFObject.js +11 -14
- package/cjs/core/objects/PDFObject.js.map +1 -1
- package/cjs/core/objects/PDFRawStream.d.ts +6 -4
- package/cjs/core/objects/PDFRawStream.d.ts.map +1 -1
- package/cjs/core/objects/PDFRawStream.js +21 -25
- package/cjs/core/objects/PDFRawStream.js.map +1 -1
- package/cjs/core/objects/PDFRef.d.ts +1 -1
- package/cjs/core/objects/PDFRef.d.ts.map +1 -1
- package/cjs/core/objects/PDFRef.js +31 -36
- package/cjs/core/objects/PDFRef.js.map +1 -1
- package/cjs/core/objects/PDFStream.d.ts +3 -3
- package/cjs/core/objects/PDFStream.d.ts.map +1 -1
- package/cjs/core/objects/PDFStream.js +32 -35
- package/cjs/core/objects/PDFStream.js.map +1 -1
- package/cjs/core/objects/PDFString.d.ts +1 -1
- package/cjs/core/objects/PDFString.d.ts.map +1 -1
- package/cjs/core/objects/PDFString.js +55 -58
- package/cjs/core/objects/PDFString.js.map +1 -1
- package/cjs/core/operators/PDFOperator.d.ts +7 -7
- package/cjs/core/operators/PDFOperator.d.ts.map +1 -1
- package/cjs/core/operators/PDFOperator.js +29 -32
- package/cjs/core/operators/PDFOperator.js.map +1 -1
- package/cjs/core/parser/BaseParser.d.ts +1 -1
- package/cjs/core/parser/BaseParser.d.ts.map +1 -1
- package/cjs/core/parser/BaseParser.js +40 -42
- package/cjs/core/parser/BaseParser.js.map +1 -1
- package/cjs/core/parser/ByteStream.d.ts +1 -1
- package/cjs/core/parser/ByteStream.d.ts.map +1 -1
- package/cjs/core/parser/ByteStream.js +30 -33
- package/cjs/core/parser/ByteStream.js.map +1 -1
- package/cjs/core/parser/PDFObjectParser.d.ts +22 -20
- package/cjs/core/parser/PDFObjectParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFObjectParser.js +96 -88
- package/cjs/core/parser/PDFObjectParser.js.map +1 -1
- package/cjs/core/parser/PDFObjectStreamParser.d.ts +2 -2
- package/cjs/core/parser/PDFObjectStreamParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFObjectStreamParser.js +42 -60
- package/cjs/core/parser/PDFObjectStreamParser.js.map +1 -1
- package/cjs/core/parser/PDFParser.d.ts +5 -4
- package/cjs/core/parser/PDFParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFParser.js +159 -213
- package/cjs/core/parser/PDFParser.js.map +1 -1
- package/cjs/core/parser/PDFXRefStreamParser.d.ts +2 -2
- package/cjs/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFXRefStreamParser.js +38 -41
- package/cjs/core/parser/PDFXRefStreamParser.js.map +1 -1
- package/cjs/core/streams/Ascii85Stream.d.ts +2 -2
- package/cjs/core/streams/Ascii85Stream.d.ts.map +1 -1
- package/cjs/core/streams/Ascii85Stream.js +21 -26
- package/cjs/core/streams/Ascii85Stream.js.map +1 -1
- package/cjs/core/streams/AsciiHexStream.d.ts +2 -2
- package/cjs/core/streams/AsciiHexStream.d.ts.map +1 -1
- package/cjs/core/streams/AsciiHexStream.js +19 -22
- package/cjs/core/streams/AsciiHexStream.js.map +1 -1
- package/cjs/core/streams/DecodeStream.d.ts +1 -1
- package/cjs/core/streams/DecodeStream.d.ts.map +1 -1
- package/cjs/core/streams/DecodeStream.js +54 -61
- package/cjs/core/streams/DecodeStream.js.map +1 -1
- package/cjs/core/streams/DecryptStream.d.ts +13 -0
- package/cjs/core/streams/DecryptStream.d.ts.map +1 -0
- package/cjs/core/streams/DecryptStream.js +37 -0
- package/cjs/core/streams/DecryptStream.js.map +1 -0
- package/cjs/core/streams/FlateStream.d.ts +2 -2
- package/cjs/core/streams/FlateStream.d.ts.map +1 -1
- package/cjs/core/streams/FlateStream.js +81 -84
- package/cjs/core/streams/FlateStream.js.map +1 -1
- package/cjs/core/streams/LZWStream.d.ts +3 -3
- package/cjs/core/streams/LZWStream.d.ts.map +1 -1
- package/cjs/core/streams/LZWStream.js +42 -45
- package/cjs/core/streams/LZWStream.js.map +1 -1
- package/cjs/core/streams/RunLengthStream.d.ts +2 -2
- package/cjs/core/streams/RunLengthStream.d.ts.map +1 -1
- package/cjs/core/streams/RunLengthStream.js +16 -19
- package/cjs/core/streams/RunLengthStream.js.map +1 -1
- package/cjs/core/streams/Stream.js +45 -56
- package/cjs/core/streams/Stream.js.map +1 -1
- package/cjs/core/streams/decode.d.ts +3 -3
- package/cjs/core/streams/decode.d.ts.map +1 -1
- package/cjs/core/streams/decode.js +24 -21
- package/cjs/core/streams/decode.js.map +1 -1
- package/cjs/core/structures/PDFCatalog.d.ts +5 -5
- package/cjs/core/structures/PDFCatalog.d.ts.map +1 -1
- package/cjs/core/structures/PDFCatalog.js +40 -47
- package/cjs/core/structures/PDFCatalog.js.map +1 -1
- package/cjs/core/structures/PDFContentStream.d.ts +4 -4
- package/cjs/core/structures/PDFContentStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFContentStream.js +31 -43
- package/cjs/core/structures/PDFContentStream.js.map +1 -1
- package/cjs/core/structures/PDFCrossRefStream.d.ts +4 -4
- package/cjs/core/structures/PDFCrossRefStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFCrossRefStream.js +92 -100
- package/cjs/core/structures/PDFCrossRefStream.js.map +1 -1
- package/cjs/core/structures/PDFFlateStream.d.ts +3 -3
- package/cjs/core/structures/PDFFlateStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFFlateStream.js +21 -24
- package/cjs/core/structures/PDFFlateStream.js.map +1 -1
- package/cjs/core/structures/PDFObjectStream.d.ts +4 -4
- package/cjs/core/structures/PDFObjectStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFObjectStream.js +49 -56
- package/cjs/core/structures/PDFObjectStream.js.map +1 -1
- package/cjs/core/structures/PDFPageLeaf.d.ts +9 -9
- package/cjs/core/structures/PDFPageLeaf.d.ts.map +1 -1
- package/cjs/core/structures/PDFPageLeaf.js +126 -133
- package/cjs/core/structures/PDFPageLeaf.js.map +1 -1
- package/cjs/core/structures/PDFPageTree.d.ts +6 -6
- package/cjs/core/structures/PDFPageTree.d.ts.map +1 -1
- package/cjs/core/structures/PDFPageTree.js +67 -75
- package/cjs/core/structures/PDFPageTree.js.map +1 -1
- package/cjs/core/syntax/Delimiters.js +2 -2
- package/cjs/core/syntax/Delimiters.js.map +1 -1
- package/cjs/core/syntax/Irregular.js +5 -5
- package/cjs/core/syntax/Irregular.js.map +1 -1
- package/cjs/core/syntax/Keywords.d.ts +1 -1
- package/cjs/core/syntax/Keywords.d.ts.map +1 -1
- package/cjs/core/syntax/Keywords.js +14 -14
- package/cjs/core/syntax/Keywords.js.map +1 -1
- package/cjs/core/syntax/Numeric.js +3 -3
- package/cjs/core/syntax/Numeric.js.map +1 -1
- package/cjs/core/syntax/Whitespace.js +2 -2
- package/cjs/core/syntax/Whitespace.js.map +1 -1
- package/cjs/core/writers/PDFStreamWriter.d.ts +6 -6
- package/cjs/core/writers/PDFStreamWriter.d.ts.map +1 -1
- package/cjs/core/writers/PDFStreamWriter.js +75 -106
- package/cjs/core/writers/PDFStreamWriter.js.map +1 -1
- package/cjs/core/writers/PDFWriter.d.ts +12 -9
- package/cjs/core/writers/PDFWriter.d.ts.map +1 -1
- package/cjs/core/writers/PDFWriter.js +89 -125
- package/cjs/core/writers/PDFWriter.js.map +1 -1
- package/cjs/index.d.ts +4 -4
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +5 -5
- package/cjs/index.js.map +1 -1
- package/cjs/types/index.d.ts +25 -1
- package/cjs/types/index.d.ts.map +1 -1
- package/cjs/types/matrix.d.ts +8 -1
- package/cjs/types/matrix.d.ts.map +1 -1
- package/cjs/utils/Cache.js +10 -11
- package/cjs/utils/Cache.js.map +1 -1
- package/cjs/utils/arrays.d.ts +2 -1
- package/cjs/utils/arrays.d.ts.map +1 -1
- package/cjs/utils/arrays.js +83 -64
- package/cjs/utils/arrays.js.map +1 -1
- package/cjs/utils/async.d.ts.map +1 -1
- package/cjs/utils/async.js +4 -5
- package/cjs/utils/async.js.map +1 -1
- package/cjs/utils/base64.d.ts.map +1 -1
- package/cjs/utils/base64.js +29 -26
- package/cjs/utils/base64.js.map +1 -1
- package/cjs/utils/elements/Arc.d.ts +23 -0
- package/cjs/utils/elements/Arc.d.ts.map +1 -0
- package/cjs/utils/elements/Arc.js +78 -0
- package/cjs/utils/elements/Arc.js.map +1 -0
- package/cjs/utils/elements/Circle.d.ts +15 -0
- package/cjs/utils/elements/Circle.d.ts.map +1 -0
- package/cjs/utils/elements/Circle.js +41 -0
- package/cjs/utils/elements/Circle.js.map +1 -0
- package/cjs/utils/elements/Ellipse.d.ts +21 -0
- package/cjs/utils/elements/Ellipse.d.ts.map +1 -0
- package/cjs/utils/elements/Ellipse.js +91 -0
- package/cjs/utils/elements/Ellipse.js.map +1 -0
- package/cjs/utils/elements/GraphElement.d.ts +7 -0
- package/cjs/utils/elements/GraphElement.d.ts.map +1 -0
- package/cjs/utils/elements/GraphElement.js +11 -0
- package/cjs/utils/elements/GraphElement.js.map +1 -0
- package/cjs/utils/elements/Line.d.ts +24 -0
- package/cjs/utils/elements/Line.d.ts.map +1 -0
- package/cjs/utils/elements/Line.js +72 -0
- package/cjs/utils/elements/Line.js.map +1 -0
- package/cjs/utils/elements/Plot.d.ts +12 -0
- package/cjs/utils/elements/Plot.d.ts.map +1 -0
- package/cjs/utils/elements/Plot.js +46 -0
- package/cjs/utils/elements/Plot.js.map +1 -0
- package/cjs/utils/elements/Point.d.ts +19 -0
- package/cjs/utils/elements/Point.d.ts.map +1 -0
- package/cjs/utils/elements/Point.js +32 -0
- package/cjs/utils/elements/Point.js.map +1 -0
- package/cjs/utils/elements/Rectangle.d.ts +22 -0
- package/cjs/utils/elements/Rectangle.d.ts.map +1 -0
- package/cjs/utils/elements/Rectangle.js +58 -0
- package/cjs/utils/elements/Rectangle.js.map +1 -0
- package/cjs/utils/elements/Segment.d.ts +20 -0
- package/cjs/utils/elements/Segment.d.ts.map +1 -0
- package/cjs/utils/elements/Segment.js +80 -0
- package/cjs/utils/elements/Segment.js.map +1 -0
- package/cjs/utils/elements/index.d.ts +10 -0
- package/cjs/utils/elements/index.d.ts.map +1 -0
- package/cjs/utils/elements/index.js +25 -0
- package/cjs/utils/elements/index.js.map +1 -0
- package/cjs/utils/errors.js +2 -1
- package/cjs/utils/errors.js.map +1 -1
- package/cjs/utils/index.d.ts +11 -11
- package/cjs/utils/index.d.ts.map +1 -1
- package/cjs/utils/index.js +13 -12
- package/cjs/utils/index.js.map +1 -1
- package/cjs/utils/intersections.d.ts +10 -0
- package/cjs/utils/intersections.d.ts.map +1 -0
- package/cjs/utils/intersections.js +255 -0
- package/cjs/utils/intersections.js.map +1 -0
- package/cjs/utils/maths.d.ts +46 -0
- package/cjs/utils/maths.d.ts.map +1 -0
- package/cjs/utils/maths.js +89 -0
- package/cjs/utils/maths.js.map +1 -0
- package/cjs/utils/numbers.js +12 -9
- package/cjs/utils/numbers.js.map +1 -1
- package/cjs/utils/objects.js +8 -7
- package/cjs/utils/objects.js.map +1 -1
- package/cjs/utils/pdfDocEncoding.js +52 -51
- package/cjs/utils/pdfDocEncoding.js.map +1 -1
- package/cjs/utils/png.js +22 -23
- package/cjs/utils/png.js.map +1 -1
- package/cjs/utils/rng.js +7 -8
- package/cjs/utils/rng.js.map +1 -1
- package/cjs/utils/strings.d.ts +1 -0
- package/cjs/utils/strings.d.ts.map +1 -1
- package/cjs/utils/strings.js +84 -70
- package/cjs/utils/strings.js.map +1 -1
- package/cjs/utils/unicode.js +51 -64
- package/cjs/utils/unicode.js.map +1 -1
- package/cjs/utils/validators.js +84 -67
- package/cjs/utils/validators.js.map +1 -1
- package/dist/pdf-lib.esm.js +13605 -7680
- package/dist/pdf-lib.esm.js.map +1 -1
- package/dist/pdf-lib.esm.min.js +12 -12
- package/dist/pdf-lib.esm.min.js.map +1 -1
- package/dist/pdf-lib.js +13614 -7686
- package/dist/pdf-lib.js.map +1 -1
- package/dist/pdf-lib.min.js +12 -12
- package/dist/pdf-lib.min.js.map +1 -1
- package/es/api/Embeddable.js +1 -0
- package/es/api/PDFDocument.d.ts +11 -11
- package/es/api/PDFDocument.d.ts.map +1 -1
- package/es/api/PDFDocument.js +361 -503
- package/es/api/PDFDocument.js.map +1 -1
- package/es/api/PDFDocumentOptions.d.ts +3 -2
- package/es/api/PDFDocumentOptions.d.ts.map +1 -1
- package/es/api/PDFEmbeddedFile.d.ts +4 -4
- package/es/api/PDFEmbeddedFile.d.ts.map +1 -1
- package/es/api/PDFEmbeddedFile.js +49 -62
- package/es/api/PDFEmbeddedFile.js.map +1 -1
- package/es/api/PDFEmbeddedPage.d.ts +3 -3
- package/es/api/PDFEmbeddedPage.d.ts.map +1 -1
- package/es/api/PDFEmbeddedPage.js +31 -43
- package/es/api/PDFEmbeddedPage.js.map +1 -1
- package/es/api/PDFFont.d.ts +3 -3
- package/es/api/PDFFont.d.ts.map +1 -1
- package/es/api/PDFFont.js +38 -49
- package/es/api/PDFFont.js.map +1 -1
- package/es/api/PDFImage.d.ts +3 -3
- package/es/api/PDFImage.d.ts.map +1 -1
- package/es/api/PDFImage.js +44 -57
- package/es/api/PDFImage.js.map +1 -1
- package/es/api/PDFJavaScript.d.ts +4 -4
- package/es/api/PDFJavaScript.d.ts.map +1 -1
- package/es/api/PDFJavaScript.js +38 -51
- package/es/api/PDFJavaScript.js.map +1 -1
- package/es/api/PDFPage.d.ts +21 -9
- package/es/api/PDFPage.d.ts.map +1 -1
- package/es/api/PDFPage.js +270 -260
- package/es/api/PDFPage.js.map +1 -1
- package/es/api/PDFPageOptions.d.ts +15 -4
- package/es/api/PDFPageOptions.d.ts.map +1 -1
- package/es/api/colors.d.ts +4 -0
- package/es/api/colors.d.ts.map +1 -1
- package/es/api/colors.js +34 -34
- package/es/api/colors.js.map +1 -1
- package/es/api/errors.js +73 -144
- package/es/api/errors.js.map +1 -1
- package/es/api/form/PDFButton.d.ts +8 -8
- package/es/api/form/PDFButton.d.ts.map +1 -1
- package/es/api/form/PDFButton.js +56 -62
- package/es/api/form/PDFButton.js.map +1 -1
- package/es/api/form/PDFCheckBox.d.ts +5 -5
- package/es/api/form/PDFCheckBox.d.ts.map +1 -1
- package/es/api/form/PDFCheckBox.js +55 -62
- package/es/api/form/PDFCheckBox.js.map +1 -1
- package/es/api/form/PDFDropdown.d.ts +6 -6
- package/es/api/form/PDFDropdown.d.ts.map +1 -1
- package/es/api/form/PDFDropdown.js +110 -118
- package/es/api/form/PDFDropdown.js.map +1 -1
- package/es/api/form/PDFField.d.ts +6 -6
- package/es/api/form/PDFField.d.ts.map +1 -1
- package/es/api/form/PDFField.js +98 -106
- package/es/api/form/PDFField.js.map +1 -1
- package/es/api/form/PDFForm.d.ts +11 -11
- package/es/api/form/PDFForm.d.ts.map +1 -1
- package/es/api/form/PDFForm.js +195 -196
- package/es/api/form/PDFForm.js.map +1 -1
- package/es/api/form/PDFOptionList.d.ts +6 -6
- package/es/api/form/PDFOptionList.d.ts.map +1 -1
- package/es/api/form/PDFOptionList.js +98 -106
- package/es/api/form/PDFOptionList.js.map +1 -1
- package/es/api/form/PDFRadioGroup.d.ts +5 -5
- package/es/api/form/PDFRadioGroup.d.ts.map +1 -1
- package/es/api/form/PDFRadioGroup.js +86 -91
- package/es/api/form/PDFRadioGroup.js.map +1 -1
- package/es/api/form/PDFSignature.d.ts +3 -3
- package/es/api/form/PDFSignature.d.ts.map +1 -1
- package/es/api/form/PDFSignature.js +23 -28
- package/es/api/form/PDFSignature.js.map +1 -1
- package/es/api/form/PDFTextField.d.ts +8 -8
- package/es/api/form/PDFTextField.d.ts.map +1 -1
- package/es/api/form/PDFTextField.js +121 -128
- package/es/api/form/PDFTextField.js.map +1 -1
- package/es/api/form/appearances.d.ts +11 -11
- package/es/api/form/appearances.d.ts.map +1 -1
- package/es/api/form/appearances.js +245 -214
- package/es/api/form/appearances.js.map +1 -1
- package/es/api/form/index.d.ts +10 -10
- package/es/api/form/index.d.ts.map +1 -1
- package/es/api/form/index.js +10 -10
- package/es/api/form/index.js.map +1 -1
- package/es/api/image/index.d.ts +1 -1
- package/es/api/image/index.d.ts.map +1 -1
- package/es/api/image/index.js +1 -1
- package/es/api/image/index.js.map +1 -1
- package/es/api/index.d.ts +20 -20
- package/es/api/index.d.ts.map +1 -1
- package/es/api/index.js +19 -19
- package/es/api/index.js.map +1 -1
- package/es/api/objects.d.ts +1 -1
- package/es/api/objects.d.ts.map +1 -1
- package/es/api/objects.js +4 -10
- package/es/api/objects.js.map +1 -1
- package/es/api/operations.d.ts +5 -4
- package/es/api/operations.d.ts.map +1 -1
- package/es/api/operations.js +207 -210
- package/es/api/operations.js.map +1 -1
- package/es/api/operators.d.ts +6 -1
- package/es/api/operators.d.ts.map +1 -1
- package/es/api/operators.js +114 -182
- package/es/api/operators.js.map +1 -1
- package/es/api/rotations.d.ts +1 -1
- package/es/api/rotations.d.ts.map +1 -1
- package/es/api/rotations.js +20 -28
- package/es/api/rotations.js.map +1 -1
- package/es/api/sizes.js +1 -1
- package/es/api/sizes.js.map +1 -1
- package/es/api/svg.d.ts +65 -0
- package/es/api/svg.d.ts.map +1 -0
- package/es/api/svg.js +1334 -0
- package/es/api/svg.js.map +1 -0
- package/es/api/svgPath.d.ts +1 -1
- package/es/api/svgPath.d.ts.map +1 -1
- package/es/api/svgPath.js +104 -108
- package/es/api/svgPath.js.map +1 -1
- package/es/api/text/index.d.ts +2 -2
- package/es/api/text/index.d.ts.map +1 -1
- package/es/api/text/index.js +2 -2
- package/es/api/text/index.js.map +1 -1
- package/es/api/text/layout.d.ts +3 -3
- package/es/api/text/layout.d.ts.map +1 -1
- package/es/api/text/layout.js +84 -88
- package/es/api/text/layout.js.map +1 -1
- package/es/core/PDFContext.d.ts +17 -16
- package/es/core/PDFContext.d.ts.map +1 -1
- package/es/core/PDFContext.js +81 -99
- package/es/core/PDFContext.js.map +1 -1
- package/es/core/PDFObjectCopier.d.ts +2 -2
- package/es/core/PDFObjectCopier.d.ts.map +1 -1
- package/es/core/PDFObjectCopier.js +57 -61
- package/es/core/PDFObjectCopier.js.map +1 -1
- package/es/core/acroform/PDFAcroButton.d.ts +7 -7
- package/es/core/acroform/PDFAcroButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroButton.js +41 -47
- package/es/core/acroform/PDFAcroButton.js.map +1 -1
- package/es/core/acroform/PDFAcroCheckBox.d.ts +5 -5
- package/es/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroCheckBox.js +27 -35
- package/es/core/acroform/PDFAcroCheckBox.js.map +1 -1
- package/es/core/acroform/PDFAcroChoice.d.ts +4 -4
- package/es/core/acroform/PDFAcroChoice.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroChoice.js +46 -60
- package/es/core/acroform/PDFAcroChoice.js.map +1 -1
- package/es/core/acroform/PDFAcroComboBox.d.ts +4 -4
- package/es/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroComboBox.js +14 -22
- package/es/core/acroform/PDFAcroComboBox.js.map +1 -1
- package/es/core/acroform/PDFAcroField.d.ts +8 -8
- package/es/core/acroform/PDFAcroField.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroField.js +79 -80
- package/es/core/acroform/PDFAcroField.js.map +1 -1
- package/es/core/acroform/PDFAcroForm.d.ts +5 -5
- package/es/core/acroform/PDFAcroForm.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroForm.js +43 -44
- package/es/core/acroform/PDFAcroForm.js.map +1 -1
- package/es/core/acroform/PDFAcroListBox.d.ts +4 -4
- package/es/core/acroform/PDFAcroListBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroListBox.js +12 -20
- package/es/core/acroform/PDFAcroListBox.js.map +1 -1
- package/es/core/acroform/PDFAcroNonTerminal.d.ts +4 -4
- package/es/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroNonTerminal.js +17 -25
- package/es/core/acroform/PDFAcroNonTerminal.js.map +1 -1
- package/es/core/acroform/PDFAcroPushButton.d.ts +4 -4
- package/es/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroPushButton.js +14 -22
- package/es/core/acroform/PDFAcroPushButton.js.map +1 -1
- package/es/core/acroform/PDFAcroRadioButton.d.ts +5 -5
- package/es/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroRadioButton.js +32 -40
- package/es/core/acroform/PDFAcroRadioButton.js.map +1 -1
- package/es/core/acroform/PDFAcroSignature.d.ts +3 -3
- package/es/core/acroform/PDFAcroSignature.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroSignature.js +4 -12
- package/es/core/acroform/PDFAcroSignature.js.map +1 -1
- package/es/core/acroform/PDFAcroTerminal.d.ts +5 -5
- package/es/core/acroform/PDFAcroTerminal.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroTerminal.js +27 -35
- package/es/core/acroform/PDFAcroTerminal.js.map +1 -1
- package/es/core/acroform/PDFAcroText.d.ts +7 -7
- package/es/core/acroform/PDFAcroText.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroText.js +39 -45
- package/es/core/acroform/PDFAcroText.js.map +1 -1
- package/es/core/acroform/flags.js +1 -1
- package/es/core/acroform/flags.js.map +1 -1
- package/es/core/acroform/index.d.ts +15 -15
- package/es/core/acroform/index.d.ts.map +1 -1
- package/es/core/acroform/index.js +15 -15
- package/es/core/acroform/index.js.map +1 -1
- package/es/core/acroform/utils.d.ts +4 -4
- package/es/core/acroform/utils.d.ts.map +1 -1
- package/es/core/acroform/utils.js +44 -46
- package/es/core/acroform/utils.js.map +1 -1
- package/es/core/annotation/AppearanceCharacteristics.d.ts +5 -5
- package/es/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
- package/es/core/annotation/AppearanceCharacteristics.js +60 -63
- package/es/core/annotation/AppearanceCharacteristics.js.map +1 -1
- package/es/core/annotation/BorderStyle.d.ts +2 -2
- package/es/core/annotation/BorderStyle.d.ts.map +1 -1
- package/es/core/annotation/BorderStyle.js +14 -15
- package/es/core/annotation/BorderStyle.js.map +1 -1
- package/es/core/annotation/PDFAnnotation.d.ts +6 -6
- package/es/core/annotation/PDFAnnotation.d.ts.map +1 -1
- package/es/core/annotation/PDFAnnotation.js +75 -76
- package/es/core/annotation/PDFAnnotation.js.map +1 -1
- package/es/core/annotation/PDFWidgetAnnotation.d.ts +9 -9
- package/es/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
- package/es/core/annotation/PDFWidgetAnnotation.js +59 -67
- package/es/core/annotation/PDFWidgetAnnotation.js.map +1 -1
- package/es/core/annotation/flags.js +1 -1
- package/es/core/annotation/flags.js.map +1 -1
- package/es/core/annotation/index.d.ts +4 -4
- package/es/core/annotation/index.d.ts.map +1 -1
- package/es/core/annotation/index.js +4 -4
- package/es/core/annotation/index.js.map +1 -1
- package/es/core/crypto.d.ts +96 -0
- package/es/core/crypto.d.ts.map +1 -0
- package/es/core/crypto.js +1605 -0
- package/es/core/crypto.js.map +1 -0
- package/es/core/document/PDFCrossRefSection.d.ts +1 -1
- package/es/core/document/PDFCrossRefSection.d.ts.map +1 -1
- package/es/core/document/PDFCrossRefSection.js +55 -58
- package/es/core/document/PDFCrossRefSection.js.map +1 -1
- package/es/core/document/PDFHeader.js +15 -18
- package/es/core/document/PDFHeader.js.map +1 -1
- package/es/core/document/PDFTrailer.js +14 -17
- package/es/core/document/PDFTrailer.js.map +1 -1
- package/es/core/document/PDFTrailerDict.d.ts +1 -1
- package/es/core/document/PDFTrailerDict.d.ts.map +1 -1
- package/es/core/document/PDFTrailerDict.js +13 -14
- package/es/core/document/PDFTrailerDict.js.map +1 -1
- package/es/core/embedders/CMap.d.ts +1 -1
- package/es/core/embedders/CMap.d.ts.map +1 -1
- package/es/core/embedders/CMap.js +38 -26
- package/es/core/embedders/CMap.js.map +1 -1
- package/es/core/embedders/CustomFontEmbedder.d.ts +5 -5
- package/es/core/embedders/CustomFontEmbedder.d.ts.map +1 -1
- package/es/core/embedders/CustomFontEmbedder.js +131 -176
- package/es/core/embedders/CustomFontEmbedder.js.map +1 -1
- package/es/core/embedders/CustomFontSubsetEmbedder.d.ts +3 -3
- package/es/core/embedders/CustomFontSubsetEmbedder.d.ts.map +1 -1
- package/es/core/embedders/CustomFontSubsetEmbedder.js +39 -50
- package/es/core/embedders/CustomFontSubsetEmbedder.js.map +1 -1
- package/es/core/embedders/FileEmbedder.d.ts +2 -2
- package/es/core/embedders/FileEmbedder.d.ts.map +1 -1
- package/es/core/embedders/FileEmbedder.js +40 -47
- package/es/core/embedders/FileEmbedder.js.map +1 -1
- package/es/core/embedders/FontFlags.d.ts +1 -1
- package/es/core/embedders/FontFlags.d.ts.map +1 -1
- package/es/core/embedders/FontFlags.js +6 -6
- package/es/core/embedders/FontFlags.js.map +1 -1
- package/es/core/embedders/JavaScriptEmbedder.d.ts +2 -2
- package/es/core/embedders/JavaScriptEmbedder.d.ts.map +1 -1
- package/es/core/embedders/JavaScriptEmbedder.js +21 -26
- package/es/core/embedders/JavaScriptEmbedder.js.map +1 -1
- package/es/core/embedders/JpegEmbedder.d.ts +2 -2
- package/es/core/embedders/JpegEmbedder.d.ts.map +1 -1
- package/es/core/embedders/JpegEmbedder.js +64 -71
- package/es/core/embedders/JpegEmbedder.js.map +1 -1
- package/es/core/embedders/PDFPageEmbedder.d.ts +4 -4
- package/es/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
- package/es/core/embedders/PDFPageEmbedder.js +54 -60
- package/es/core/embedders/PDFPageEmbedder.js.map +1 -1
- package/es/core/embedders/PngEmbedder.d.ts +2 -2
- package/es/core/embedders/PngEmbedder.d.ts.map +1 -1
- package/es/core/embedders/PngEmbedder.js +32 -40
- package/es/core/embedders/PngEmbedder.js.map +1 -1
- package/es/core/embedders/StandardFontEmbedder.d.ts +3 -3
- package/es/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
- package/es/core/embedders/StandardFontEmbedder.js +43 -47
- package/es/core/embedders/StandardFontEmbedder.js.map +1 -1
- package/es/core/errors.d.ts +1 -1
- package/es/core/errors.d.ts.map +1 -1
- package/es/core/errors.js +175 -316
- package/es/core/errors.js.map +1 -1
- package/es/core/index.d.ts +47 -47
- package/es/core/index.d.ts.map +1 -1
- package/es/core/index.js +47 -47
- package/es/core/index.js.map +1 -1
- package/es/core/interactive/ViewerPreferences.d.ts +6 -6
- package/es/core/interactive/ViewerPreferences.d.ts.map +1 -1
- package/es/core/interactive/ViewerPreferences.js +127 -130
- package/es/core/interactive/ViewerPreferences.js.map +1 -1
- package/es/core/objects/PDFArray.d.ts +12 -12
- package/es/core/objects/PDFArray.d.ts.map +1 -1
- package/es/core/objects/PDFArray.js +71 -81
- package/es/core/objects/PDFArray.js.map +1 -1
- package/es/core/objects/PDFBool.d.ts +1 -1
- package/es/core/objects/PDFBool.d.ts.map +1 -1
- package/es/core/objects/PDFBool.js +21 -26
- package/es/core/objects/PDFBool.js.map +1 -1
- package/es/core/objects/PDFDict.d.ts +12 -11
- package/es/core/objects/PDFDict.d.ts.map +1 -1
- package/es/core/objects/PDFDict.js +73 -86
- package/es/core/objects/PDFDict.js.map +1 -1
- package/es/core/objects/PDFHexString.d.ts +1 -1
- package/es/core/objects/PDFHexString.d.ts.map +1 -1
- package/es/core/objects/PDFHexString.js +44 -48
- package/es/core/objects/PDFHexString.js.map +1 -1
- package/es/core/objects/PDFInvalidObject.d.ts +1 -1
- package/es/core/objects/PDFInvalidObject.d.ts.map +1 -1
- package/es/core/objects/PDFInvalidObject.js +18 -22
- package/es/core/objects/PDFInvalidObject.js.map +1 -1
- package/es/core/objects/PDFName.d.ts +1 -1
- package/es/core/objects/PDFName.d.ts.map +1 -1
- package/es/core/objects/PDFName.js +82 -91
- package/es/core/objects/PDFName.js.map +1 -1
- package/es/core/objects/PDFNull.d.ts +1 -1
- package/es/core/objects/PDFNull.d.ts.map +1 -1
- package/es/core/objects/PDFNull.js +14 -20
- package/es/core/objects/PDFNull.js.map +1 -1
- package/es/core/objects/PDFNumber.d.ts +1 -1
- package/es/core/objects/PDFNumber.d.ts.map +1 -1
- package/es/core/objects/PDFNumber.js +21 -25
- package/es/core/objects/PDFNumber.js.map +1 -1
- package/es/core/objects/PDFObject.d.ts +1 -1
- package/es/core/objects/PDFObject.d.ts.map +1 -1
- package/es/core/objects/PDFObject.js +11 -14
- package/es/core/objects/PDFObject.js.map +1 -1
- package/es/core/objects/PDFRawStream.d.ts +6 -4
- package/es/core/objects/PDFRawStream.d.ts.map +1 -1
- package/es/core/objects/PDFRawStream.js +19 -24
- package/es/core/objects/PDFRawStream.js.map +1 -1
- package/es/core/objects/PDFRef.d.ts +1 -1
- package/es/core/objects/PDFRef.d.ts.map +1 -1
- package/es/core/objects/PDFRef.js +29 -35
- package/es/core/objects/PDFRef.js.map +1 -1
- package/es/core/objects/PDFStream.d.ts +3 -3
- package/es/core/objects/PDFStream.d.ts.map +1 -1
- package/es/core/objects/PDFStream.js +31 -35
- package/es/core/objects/PDFStream.js.map +1 -1
- package/es/core/objects/PDFString.d.ts +1 -1
- package/es/core/objects/PDFString.d.ts.map +1 -1
- package/es/core/objects/PDFString.js +50 -54
- package/es/core/objects/PDFString.js.map +1 -1
- package/es/core/operators/PDFOperator.d.ts +7 -7
- package/es/core/operators/PDFOperator.d.ts.map +1 -1
- package/es/core/operators/PDFOperator.js +26 -29
- package/es/core/operators/PDFOperator.js.map +1 -1
- package/es/core/parser/BaseParser.d.ts +1 -1
- package/es/core/parser/BaseParser.d.ts.map +1 -1
- package/es/core/parser/BaseParser.js +36 -38
- package/es/core/parser/BaseParser.js.map +1 -1
- package/es/core/parser/ByteStream.d.ts +1 -1
- package/es/core/parser/ByteStream.d.ts.map +1 -1
- package/es/core/parser/ByteStream.js +29 -32
- package/es/core/parser/ByteStream.js.map +1 -1
- package/es/core/parser/PDFObjectParser.d.ts +22 -20
- package/es/core/parser/PDFObjectParser.d.ts.map +1 -1
- package/es/core/parser/PDFObjectParser.js +92 -85
- package/es/core/parser/PDFObjectParser.js.map +1 -1
- package/es/core/parser/PDFObjectStreamParser.d.ts +2 -2
- package/es/core/parser/PDFObjectStreamParser.d.ts.map +1 -1
- package/es/core/parser/PDFObjectStreamParser.js +42 -60
- package/es/core/parser/PDFObjectStreamParser.js.map +1 -1
- package/es/core/parser/PDFParser.d.ts +5 -4
- package/es/core/parser/PDFParser.d.ts.map +1 -1
- package/es/core/parser/PDFParser.js +159 -213
- package/es/core/parser/PDFParser.js.map +1 -1
- package/es/core/parser/PDFXRefStreamParser.d.ts +2 -2
- package/es/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
- package/es/core/parser/PDFXRefStreamParser.js +37 -40
- package/es/core/parser/PDFXRefStreamParser.js.map +1 -1
- package/es/core/streams/Ascii85Stream.d.ts +2 -2
- package/es/core/streams/Ascii85Stream.d.ts.map +1 -1
- package/es/core/streams/Ascii85Stream.js +20 -26
- package/es/core/streams/Ascii85Stream.js.map +1 -1
- package/es/core/streams/AsciiHexStream.d.ts +2 -2
- package/es/core/streams/AsciiHexStream.d.ts.map +1 -1
- package/es/core/streams/AsciiHexStream.js +18 -22
- package/es/core/streams/AsciiHexStream.js.map +1 -1
- package/es/core/streams/DecodeStream.d.ts +1 -1
- package/es/core/streams/DecodeStream.d.ts.map +1 -1
- package/es/core/streams/DecodeStream.js +53 -60
- package/es/core/streams/DecodeStream.js.map +1 -1
- package/es/core/streams/DecryptStream.d.ts +13 -0
- package/es/core/streams/DecryptStream.d.ts.map +1 -0
- package/es/core/streams/DecryptStream.js +34 -0
- package/es/core/streams/DecryptStream.js.map +1 -0
- package/es/core/streams/FlateStream.d.ts +2 -2
- package/es/core/streams/FlateStream.d.ts.map +1 -1
- package/es/core/streams/FlateStream.js +80 -84
- package/es/core/streams/FlateStream.js.map +1 -1
- package/es/core/streams/LZWStream.d.ts +3 -3
- package/es/core/streams/LZWStream.d.ts.map +1 -1
- package/es/core/streams/LZWStream.js +41 -45
- package/es/core/streams/LZWStream.js.map +1 -1
- package/es/core/streams/RunLengthStream.d.ts +2 -2
- package/es/core/streams/RunLengthStream.d.ts.map +1 -1
- package/es/core/streams/RunLengthStream.js +15 -19
- package/es/core/streams/RunLengthStream.js.map +1 -1
- package/es/core/streams/Stream.js +45 -56
- package/es/core/streams/Stream.js.map +1 -1
- package/es/core/streams/decode.d.ts +3 -3
- package/es/core/streams/decode.d.ts.map +1 -1
- package/es/core/streams/decode.js +22 -20
- package/es/core/streams/decode.js.map +1 -1
- package/es/core/structures/PDFCatalog.d.ts +5 -5
- package/es/core/structures/PDFCatalog.d.ts.map +1 -1
- package/es/core/structures/PDFCatalog.js +39 -47
- package/es/core/structures/PDFCatalog.js.map +1 -1
- package/es/core/structures/PDFContentStream.d.ts +4 -4
- package/es/core/structures/PDFContentStream.d.ts.map +1 -1
- package/es/core/structures/PDFContentStream.js +30 -43
- package/es/core/structures/PDFContentStream.js.map +1 -1
- package/es/core/structures/PDFCrossRefStream.d.ts +4 -4
- package/es/core/structures/PDFCrossRefStream.d.ts.map +1 -1
- package/es/core/structures/PDFCrossRefStream.js +91 -100
- package/es/core/structures/PDFCrossRefStream.js.map +1 -1
- package/es/core/structures/PDFFlateStream.d.ts +3 -3
- package/es/core/structures/PDFFlateStream.d.ts.map +1 -1
- package/es/core/structures/PDFFlateStream.js +19 -23
- package/es/core/structures/PDFFlateStream.js.map +1 -1
- package/es/core/structures/PDFObjectStream.d.ts +4 -4
- package/es/core/structures/PDFObjectStream.d.ts.map +1 -1
- package/es/core/structures/PDFObjectStream.js +46 -54
- package/es/core/structures/PDFObjectStream.js.map +1 -1
- package/es/core/structures/PDFPageLeaf.d.ts +9 -9
- package/es/core/structures/PDFPageLeaf.d.ts.map +1 -1
- package/es/core/structures/PDFPageLeaf.js +125 -133
- package/es/core/structures/PDFPageLeaf.js.map +1 -1
- package/es/core/structures/PDFPageTree.d.ts +6 -6
- package/es/core/structures/PDFPageTree.d.ts.map +1 -1
- package/es/core/structures/PDFPageTree.js +66 -75
- package/es/core/structures/PDFPageTree.js.map +1 -1
- package/es/core/syntax/Delimiters.js +2 -2
- package/es/core/syntax/Delimiters.js.map +1 -1
- package/es/core/syntax/Irregular.js +5 -5
- package/es/core/syntax/Irregular.js.map +1 -1
- package/es/core/syntax/Keywords.d.ts +1 -1
- package/es/core/syntax/Keywords.d.ts.map +1 -1
- package/es/core/syntax/Keywords.js +14 -15
- package/es/core/syntax/Keywords.js.map +1 -1
- package/es/core/syntax/Numeric.js +5 -5
- package/es/core/syntax/Numeric.js.map +1 -1
- package/es/core/syntax/Whitespace.js +2 -2
- package/es/core/syntax/Whitespace.js.map +1 -1
- package/es/core/writers/PDFStreamWriter.d.ts +6 -6
- package/es/core/writers/PDFStreamWriter.d.ts.map +1 -1
- package/es/core/writers/PDFStreamWriter.js +75 -106
- package/es/core/writers/PDFStreamWriter.js.map +1 -1
- package/es/core/writers/PDFWriter.d.ts +12 -9
- package/es/core/writers/PDFWriter.d.ts.map +1 -1
- package/es/core/writers/PDFWriter.js +89 -125
- package/es/core/writers/PDFWriter.js.map +1 -1
- package/es/index.d.ts +4 -4
- package/es/index.d.ts.map +1 -1
- package/es/index.js +4 -4
- package/es/index.js.map +1 -1
- package/es/package.json +3 -0
- package/es/types/fontkit.js +1 -0
- package/es/types/index.d.ts +25 -1
- package/es/types/index.d.ts.map +1 -1
- package/es/types/index.js +1 -0
- package/es/types/matrix.d.ts +8 -1
- package/es/types/matrix.d.ts.map +1 -1
- package/es/types/matrix.js +1 -1
- package/es/types/matrix.js.map +1 -1
- package/es/utils/Cache.js +10 -11
- package/es/utils/Cache.js.map +1 -1
- package/es/utils/arrays.d.ts +2 -1
- package/es/utils/arrays.d.ts.map +1 -1
- package/es/utils/arrays.js +65 -60
- package/es/utils/arrays.js.map +1 -1
- package/es/utils/async.d.ts.map +1 -1
- package/es/utils/async.js +3 -5
- package/es/utils/async.js.map +1 -1
- package/es/utils/base64.d.ts.map +1 -1
- package/es/utils/base64.js +24 -24
- package/es/utils/base64.js.map +1 -1
- package/es/utils/elements/Arc.d.ts +23 -0
- package/es/utils/elements/Arc.d.ts.map +1 -0
- package/es/utils/elements/Arc.js +74 -0
- package/es/utils/elements/Arc.js.map +1 -0
- package/es/utils/elements/Circle.d.ts +15 -0
- package/es/utils/elements/Circle.d.ts.map +1 -0
- package/es/utils/elements/Circle.js +37 -0
- package/es/utils/elements/Circle.js.map +1 -0
- package/es/utils/elements/Ellipse.d.ts +21 -0
- package/es/utils/elements/Ellipse.d.ts.map +1 -0
- package/es/utils/elements/Ellipse.js +87 -0
- package/es/utils/elements/Ellipse.js.map +1 -0
- package/es/utils/elements/GraphElement.d.ts +7 -0
- package/es/utils/elements/GraphElement.d.ts.map +1 -0
- package/es/utils/elements/GraphElement.js +8 -0
- package/es/utils/elements/GraphElement.js.map +1 -0
- package/es/utils/elements/Line.d.ts +24 -0
- package/es/utils/elements/Line.d.ts.map +1 -0
- package/es/utils/elements/Line.js +68 -0
- package/es/utils/elements/Line.js.map +1 -0
- package/es/utils/elements/Plot.d.ts +12 -0
- package/es/utils/elements/Plot.d.ts.map +1 -0
- package/es/utils/elements/Plot.js +42 -0
- package/es/utils/elements/Plot.js.map +1 -0
- package/es/utils/elements/Point.d.ts +19 -0
- package/es/utils/elements/Point.d.ts.map +1 -0
- package/es/utils/elements/Point.js +28 -0
- package/es/utils/elements/Point.js.map +1 -0
- package/es/utils/elements/Rectangle.d.ts +22 -0
- package/es/utils/elements/Rectangle.d.ts.map +1 -0
- package/es/utils/elements/Rectangle.js +54 -0
- package/es/utils/elements/Rectangle.js.map +1 -0
- package/es/utils/elements/Segment.d.ts +20 -0
- package/es/utils/elements/Segment.d.ts.map +1 -0
- package/es/utils/elements/Segment.js +76 -0
- package/es/utils/elements/Segment.js.map +1 -0
- package/es/utils/elements/index.d.ts +10 -0
- package/es/utils/elements/index.d.ts.map +1 -0
- package/es/utils/elements/index.js +10 -0
- package/es/utils/elements/index.js.map +1 -0
- package/es/utils/errors.js +1 -1
- package/es/utils/errors.js.map +1 -1
- package/es/utils/index.d.ts +11 -11
- package/es/utils/index.d.ts.map +1 -1
- package/es/utils/index.js +11 -11
- package/es/utils/index.js.map +1 -1
- package/es/utils/intersections.d.ts +10 -0
- package/es/utils/intersections.d.ts.map +1 -0
- package/es/utils/intersections.js +245 -0
- package/es/utils/intersections.js.map +1 -0
- package/es/utils/maths.d.ts +46 -0
- package/es/utils/maths.d.ts.map +1 -0
- package/es/utils/maths.js +69 -0
- package/es/utils/maths.js.map +1 -0
- package/es/utils/numbers.js +9 -9
- package/es/utils/numbers.js.map +1 -1
- package/es/utils/objects.js +4 -6
- package/es/utils/objects.js.map +1 -1
- package/es/utils/pdfDocEncoding.js +7 -7
- package/es/utils/pdfDocEncoding.js.map +1 -1
- package/es/utils/png.js +20 -22
- package/es/utils/png.js.map +1 -1
- package/es/utils/rng.js +7 -9
- package/es/utils/rng.js.map +1 -1
- package/es/utils/strings.d.ts +1 -0
- package/es/utils/strings.d.ts.map +1 -1
- package/es/utils/strings.js +62 -68
- package/es/utils/strings.js.map +1 -1
- package/es/utils/unicode.js +42 -63
- package/es/utils/unicode.js.map +1 -1
- package/es/utils/validators.js +38 -38
- package/es/utils/validators.js.map +1 -1
- package/package.json +29 -20
- package/src/api/PDFDocument.ts +48 -21
- package/src/api/PDFDocumentOptions.ts +3 -2
- package/src/api/PDFEmbeddedFile.ts +4 -4
- package/src/api/PDFEmbeddedPage.ts +4 -4
- package/src/api/PDFFont.ts +4 -4
- package/src/api/PDFImage.ts +4 -4
- package/src/api/PDFJavaScript.ts +4 -4
- package/src/api/PDFPage.ts +54 -19
- package/src/api/PDFPageOptions.ts +14 -4
- package/src/api/colors.ts +12 -2
- package/src/api/form/PDFButton.ts +11 -11
- package/src/api/form/PDFCheckBox.ts +8 -8
- package/src/api/form/PDFDropdown.ts +9 -9
- package/src/api/form/PDFField.ts +7 -7
- package/src/api/form/PDFForm.ts +46 -38
- package/src/api/form/PDFOptionList.ts +9 -9
- package/src/api/form/PDFRadioGroup.ts +8 -8
- package/src/api/form/PDFSignature.ts +4 -4
- package/src/api/form/PDFTextField.ts +13 -13
- package/src/api/form/appearances.ts +40 -48
- package/src/api/form/index.ts +10 -10
- package/src/api/image/index.ts +1 -1
- package/src/api/index.ts +20 -20
- package/src/api/objects.ts +1 -1
- package/src/api/operations.ts +11 -10
- package/src/api/operators.ts +10 -3
- package/src/api/rotations.ts +1 -1
- package/src/api/svg.ts +1718 -0
- package/src/api/svgPath.ts +2 -4
- package/src/api/text/index.ts +2 -2
- package/src/api/text/layout.ts +5 -5
- package/src/core/PDFContext.ts +20 -19
- package/src/core/PDFObjectCopier.ts +8 -8
- package/src/core/acroform/PDFAcroButton.ts +8 -8
- package/src/core/acroform/PDFAcroCheckBox.ts +6 -6
- package/src/core/acroform/PDFAcroChoice.ts +7 -10
- package/src/core/acroform/PDFAcroComboBox.ts +5 -5
- package/src/core/acroform/PDFAcroField.ts +12 -11
- package/src/core/acroform/PDFAcroForm.ts +8 -11
- package/src/core/acroform/PDFAcroListBox.ts +4 -4
- package/src/core/acroform/PDFAcroNonTerminal.ts +5 -5
- package/src/core/acroform/PDFAcroPushButton.ts +5 -5
- package/src/core/acroform/PDFAcroRadioButton.ts +7 -7
- package/src/core/acroform/PDFAcroSignature.ts +3 -3
- package/src/core/acroform/PDFAcroTerminal.ts +6 -6
- package/src/core/acroform/PDFAcroText.ts +8 -8
- package/src/core/acroform/index.ts +15 -15
- package/src/core/acroform/utils.ts +20 -20
- package/src/core/annotation/AppearanceCharacteristics.ts +6 -6
- package/src/core/annotation/BorderStyle.ts +3 -3
- package/src/core/annotation/PDFAnnotation.ts +6 -6
- package/src/core/annotation/PDFWidgetAnnotation.ts +9 -9
- package/src/core/annotation/index.ts +4 -4
- package/src/core/crypto.ts +1989 -0
- package/src/core/document/PDFCrossRefSection.ts +3 -3
- package/src/core/document/PDFHeader.ts +2 -2
- package/src/core/document/PDFTrailer.ts +2 -2
- package/src/core/document/PDFTrailerDict.ts +2 -2
- package/src/core/embedders/CMap.ts +3 -3
- package/src/core/embedders/CustomFontEmbedder.ts +9 -9
- package/src/core/embedders/CustomFontSubsetEmbedder.ts +11 -4
- package/src/core/embedders/FileEmbedder.ts +4 -4
- package/src/core/embedders/FontFlags.ts +1 -1
- package/src/core/embedders/JavaScriptEmbedder.ts +3 -3
- package/src/core/embedders/JpegEmbedder.ts +2 -2
- package/src/core/embedders/PDFPageEmbedder.ts +13 -13
- package/src/core/embedders/PngEmbedder.ts +3 -3
- package/src/core/embedders/StandardFontEmbedder.ts +4 -4
- package/src/core/errors.ts +2 -2
- package/src/core/index.ts +47 -47
- package/src/core/interactive/ViewerPreferences.ts +7 -7
- package/src/core/objects/PDFArray.ts +14 -14
- package/src/core/objects/PDFBool.ts +3 -3
- package/src/core/objects/PDFDict.ts +14 -12
- package/src/core/objects/PDFHexString.ts +4 -4
- package/src/core/objects/PDFInvalidObject.ts +1 -1
- package/src/core/objects/PDFName.ts +5 -5
- package/src/core/objects/PDFNull.ts +2 -2
- package/src/core/objects/PDFNumber.ts +2 -2
- package/src/core/objects/PDFObject.ts +2 -2
- package/src/core/objects/PDFRawStream.ts +17 -7
- package/src/core/objects/PDFRef.ts +3 -3
- package/src/core/objects/PDFStream.ts +7 -7
- package/src/core/objects/PDFString.ts +4 -4
- package/src/core/operators/PDFOperator.ts +10 -10
- package/src/core/parser/BaseParser.ts +6 -6
- package/src/core/parser/ByteStream.ts +4 -4
- package/src/core/parser/PDFObjectParser.ts +78 -41
- package/src/core/parser/PDFObjectStreamParser.ts +9 -9
- package/src/core/parser/PDFParser.ts +37 -22
- package/src/core/parser/PDFXRefStreamParser.ts +9 -9
- package/src/core/streams/Ascii85Stream.ts +2 -2
- package/src/core/streams/AsciiHexStream.ts +2 -2
- package/src/core/streams/DecodeStream.ts +2 -2
- package/src/core/streams/DecryptStream.ts +56 -0
- package/src/core/streams/FlateStream.ts +2 -2
- package/src/core/streams/LZWStream.ts +3 -3
- package/src/core/streams/RunLengthStream.ts +2 -2
- package/src/core/streams/decode.ts +22 -17
- package/src/core/structures/PDFCatalog.ts +6 -6
- package/src/core/structures/PDFContentStream.ts +5 -5
- package/src/core/structures/PDFCrossRefStream.ts +6 -6
- package/src/core/structures/PDFFlateStream.ts +5 -5
- package/src/core/structures/PDFObjectStream.ts +8 -8
- package/src/core/structures/PDFPageLeaf.ts +9 -9
- package/src/core/structures/PDFPageTree.ts +8 -8
- package/src/core/syntax/Delimiters.ts +1 -1
- package/src/core/syntax/Irregular.ts +3 -3
- package/src/core/syntax/Keywords.ts +1 -1
- package/src/core/syntax/Numeric.ts +1 -1
- package/src/core/syntax/Whitespace.ts +1 -1
- package/src/core/writers/PDFStreamWriter.ts +13 -13
- package/src/core/writers/PDFWriter.ts +13 -19
- package/src/index.ts +4 -4
- package/src/types/index.ts +33 -1
- package/src/utils/arrays.ts +14 -2
- package/src/utils/base64.ts +2 -1
- package/src/utils/elements/Arc.ts +107 -0
- package/src/utils/elements/Circle.ts +55 -0
- package/src/utils/elements/Ellipse.ts +135 -0
- package/src/utils/elements/GraphElement.ts +14 -0
- package/src/utils/elements/Line.ts +85 -0
- package/src/utils/elements/Plot.ts +50 -0
- package/src/utils/elements/Point.ts +37 -0
- package/src/utils/elements/Rectangle.ts +65 -0
- package/src/utils/elements/Segment.ts +92 -0
- package/src/utils/elements/index.ts +9 -0
- package/src/utils/index.ts +11 -11
- package/src/utils/intersections.ts +282 -0
- package/src/utils/maths.ts +108 -0
- package/src/utils/pdfDocEncoding.ts +1 -1
- package/src/utils/strings.ts +8 -1
- package/src/utils/unicode.ts +1 -1
- package/src/utils/validators.ts +1 -1
- package/ts3.4/cjs/api/PDFDocument.d.ts +11 -11
- package/ts3.4/cjs/api/PDFDocumentOptions.d.ts +3 -2
- package/ts3.4/cjs/api/PDFEmbeddedFile.d.ts +4 -4
- package/ts3.4/cjs/api/PDFEmbeddedPage.d.ts +3 -3
- package/ts3.4/cjs/api/PDFFont.d.ts +3 -3
- package/ts3.4/cjs/api/PDFImage.d.ts +3 -3
- package/ts3.4/cjs/api/PDFJavaScript.d.ts +4 -4
- package/ts3.4/cjs/api/PDFPage.d.ts +21 -9
- package/ts3.4/cjs/api/PDFPageOptions.d.ts +15 -4
- package/ts3.4/cjs/api/colors.d.ts +4 -0
- package/ts3.4/cjs/api/form/PDFButton.d.ts +8 -8
- package/ts3.4/cjs/api/form/PDFCheckBox.d.ts +5 -5
- package/ts3.4/cjs/api/form/PDFDropdown.d.ts +6 -6
- package/ts3.4/cjs/api/form/PDFField.d.ts +6 -6
- package/ts3.4/cjs/api/form/PDFForm.d.ts +11 -11
- package/ts3.4/cjs/api/form/PDFOptionList.d.ts +6 -6
- package/ts3.4/cjs/api/form/PDFRadioGroup.d.ts +5 -5
- package/ts3.4/cjs/api/form/PDFSignature.d.ts +3 -3
- package/ts3.4/cjs/api/form/PDFTextField.d.ts +8 -8
- package/ts3.4/cjs/api/form/appearances.d.ts +11 -11
- package/ts3.4/cjs/api/form/index.d.ts +10 -10
- package/ts3.4/cjs/api/image/index.d.ts +1 -1
- package/ts3.4/cjs/api/index.d.ts +20 -20
- package/ts3.4/cjs/api/objects.d.ts +1 -1
- package/ts3.4/cjs/api/operations.d.ts +5 -4
- package/ts3.4/cjs/api/operators.d.ts +6 -1
- package/ts3.4/cjs/api/rotations.d.ts +1 -1
- package/ts3.4/cjs/api/svg.d.ts +65 -0
- package/ts3.4/cjs/api/svgPath.d.ts +1 -1
- package/ts3.4/cjs/api/text/index.d.ts +2 -2
- package/ts3.4/cjs/api/text/layout.d.ts +3 -3
- package/ts3.4/cjs/core/PDFContext.d.ts +17 -16
- package/ts3.4/cjs/core/PDFObjectCopier.d.ts +2 -2
- package/ts3.4/cjs/core/acroform/PDFAcroButton.d.ts +7 -7
- package/ts3.4/cjs/core/acroform/PDFAcroCheckBox.d.ts +5 -5
- package/ts3.4/cjs/core/acroform/PDFAcroChoice.d.ts +4 -4
- package/ts3.4/cjs/core/acroform/PDFAcroComboBox.d.ts +4 -4
- package/ts3.4/cjs/core/acroform/PDFAcroField.d.ts +8 -8
- package/ts3.4/cjs/core/acroform/PDFAcroForm.d.ts +5 -5
- package/ts3.4/cjs/core/acroform/PDFAcroListBox.d.ts +4 -4
- package/ts3.4/cjs/core/acroform/PDFAcroNonTerminal.d.ts +4 -4
- package/ts3.4/cjs/core/acroform/PDFAcroPushButton.d.ts +4 -4
- package/ts3.4/cjs/core/acroform/PDFAcroRadioButton.d.ts +5 -5
- package/ts3.4/cjs/core/acroform/PDFAcroSignature.d.ts +3 -3
- package/ts3.4/cjs/core/acroform/PDFAcroTerminal.d.ts +5 -5
- package/ts3.4/cjs/core/acroform/PDFAcroText.d.ts +7 -7
- package/ts3.4/cjs/core/acroform/index.d.ts +15 -15
- package/ts3.4/cjs/core/acroform/utils.d.ts +4 -4
- package/ts3.4/cjs/core/annotation/AppearanceCharacteristics.d.ts +5 -5
- package/ts3.4/cjs/core/annotation/BorderStyle.d.ts +2 -2
- package/ts3.4/cjs/core/annotation/PDFAnnotation.d.ts +6 -6
- package/ts3.4/cjs/core/annotation/PDFWidgetAnnotation.d.ts +9 -9
- package/ts3.4/cjs/core/annotation/index.d.ts +4 -4
- package/ts3.4/cjs/core/crypto.d.ts +96 -0
- package/ts3.4/cjs/core/document/PDFCrossRefSection.d.ts +1 -1
- package/ts3.4/cjs/core/document/PDFTrailerDict.d.ts +1 -1
- package/ts3.4/cjs/core/embedders/CMap.d.ts +1 -1
- package/ts3.4/cjs/core/embedders/CustomFontEmbedder.d.ts +5 -5
- package/ts3.4/cjs/core/embedders/CustomFontSubsetEmbedder.d.ts +3 -3
- package/ts3.4/cjs/core/embedders/FileEmbedder.d.ts +2 -2
- package/ts3.4/cjs/core/embedders/FontFlags.d.ts +1 -1
- package/ts3.4/cjs/core/embedders/JavaScriptEmbedder.d.ts +2 -2
- package/ts3.4/cjs/core/embedders/JpegEmbedder.d.ts +2 -2
- package/ts3.4/cjs/core/embedders/PDFPageEmbedder.d.ts +4 -4
- package/ts3.4/cjs/core/embedders/PngEmbedder.d.ts +2 -2
- package/ts3.4/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -3
- package/ts3.4/cjs/core/errors.d.ts +1 -1
- package/ts3.4/cjs/core/index.d.ts +47 -47
- package/ts3.4/cjs/core/interactive/ViewerPreferences.d.ts +6 -6
- package/ts3.4/cjs/core/objects/PDFArray.d.ts +12 -12
- package/ts3.4/cjs/core/objects/PDFBool.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFDict.d.ts +12 -11
- package/ts3.4/cjs/core/objects/PDFHexString.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFInvalidObject.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFName.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFNull.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFNumber.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFObject.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFRawStream.d.ts +6 -4
- package/ts3.4/cjs/core/objects/PDFRef.d.ts +1 -1
- package/ts3.4/cjs/core/objects/PDFStream.d.ts +3 -3
- package/ts3.4/cjs/core/objects/PDFString.d.ts +1 -1
- package/ts3.4/cjs/core/operators/PDFOperator.d.ts +7 -7
- package/ts3.4/cjs/core/parser/BaseParser.d.ts +1 -1
- package/ts3.4/cjs/core/parser/ByteStream.d.ts +1 -1
- package/ts3.4/cjs/core/parser/PDFObjectParser.d.ts +22 -20
- package/ts3.4/cjs/core/parser/PDFObjectStreamParser.d.ts +2 -2
- package/ts3.4/cjs/core/parser/PDFParser.d.ts +5 -4
- package/ts3.4/cjs/core/parser/PDFXRefStreamParser.d.ts +2 -2
- package/ts3.4/cjs/core/streams/Ascii85Stream.d.ts +2 -2
- package/ts3.4/cjs/core/streams/AsciiHexStream.d.ts +2 -2
- package/ts3.4/cjs/core/streams/DecodeStream.d.ts +1 -1
- package/ts3.4/cjs/core/streams/DecryptStream.d.ts +13 -0
- package/ts3.4/cjs/core/streams/FlateStream.d.ts +2 -2
- package/ts3.4/cjs/core/streams/LZWStream.d.ts +3 -3
- package/ts3.4/cjs/core/streams/RunLengthStream.d.ts +2 -2
- package/ts3.4/cjs/core/streams/decode.d.ts +3 -3
- package/ts3.4/cjs/core/structures/PDFCatalog.d.ts +5 -5
- package/ts3.4/cjs/core/structures/PDFContentStream.d.ts +4 -4
- package/ts3.4/cjs/core/structures/PDFCrossRefStream.d.ts +4 -4
- package/ts3.4/cjs/core/structures/PDFFlateStream.d.ts +3 -3
- package/ts3.4/cjs/core/structures/PDFObjectStream.d.ts +4 -4
- package/ts3.4/cjs/core/structures/PDFPageLeaf.d.ts +9 -9
- package/ts3.4/cjs/core/structures/PDFPageTree.d.ts +6 -6
- package/ts3.4/cjs/core/syntax/Keywords.d.ts +1 -1
- package/ts3.4/cjs/core/writers/PDFStreamWriter.d.ts +6 -6
- package/ts3.4/cjs/core/writers/PDFWriter.d.ts +8 -8
- package/ts3.4/cjs/index.d.ts +4 -4
- package/ts3.4/cjs/types/index.d.ts +25 -1
- package/ts3.4/cjs/utils/arrays.d.ts +2 -1
- package/ts3.4/cjs/utils/elements/Arc.d.ts +23 -0
- package/ts3.4/cjs/utils/elements/Circle.d.ts +15 -0
- package/ts3.4/cjs/utils/elements/Ellipse.d.ts +21 -0
- package/ts3.4/cjs/utils/elements/GraphElement.d.ts +7 -0
- package/ts3.4/cjs/utils/elements/Line.d.ts +24 -0
- package/ts3.4/cjs/utils/elements/Plot.d.ts +12 -0
- package/ts3.4/cjs/utils/elements/Point.d.ts +19 -0
- package/ts3.4/cjs/utils/elements/Rectangle.d.ts +22 -0
- package/ts3.4/cjs/utils/elements/Segment.d.ts +20 -0
- package/ts3.4/cjs/utils/elements/index.d.ts +10 -0
- package/ts3.4/cjs/utils/index.d.ts +11 -11
- package/ts3.4/cjs/utils/intersections.d.ts +10 -0
- package/ts3.4/cjs/utils/maths.d.ts +46 -0
- package/ts3.4/cjs/utils/strings.d.ts +1 -0
- package/ts3.4/es/api/PDFDocument.d.ts +11 -11
- package/ts3.4/es/api/PDFDocumentOptions.d.ts +3 -2
- package/ts3.4/es/api/PDFEmbeddedFile.d.ts +4 -4
- package/ts3.4/es/api/PDFEmbeddedPage.d.ts +3 -3
- package/ts3.4/es/api/PDFFont.d.ts +3 -3
- package/ts3.4/es/api/PDFImage.d.ts +3 -3
- package/ts3.4/es/api/PDFJavaScript.d.ts +4 -4
- package/ts3.4/es/api/PDFPage.d.ts +21 -9
- package/ts3.4/es/api/PDFPageOptions.d.ts +15 -4
- package/ts3.4/es/api/colors.d.ts +4 -0
- package/ts3.4/es/api/form/PDFButton.d.ts +8 -8
- package/ts3.4/es/api/form/PDFCheckBox.d.ts +5 -5
- package/ts3.4/es/api/form/PDFDropdown.d.ts +6 -6
- package/ts3.4/es/api/form/PDFField.d.ts +6 -6
- package/ts3.4/es/api/form/PDFForm.d.ts +11 -11
- package/ts3.4/es/api/form/PDFOptionList.d.ts +6 -6
- package/ts3.4/es/api/form/PDFRadioGroup.d.ts +5 -5
- package/ts3.4/es/api/form/PDFSignature.d.ts +3 -3
- package/ts3.4/es/api/form/PDFTextField.d.ts +8 -8
- package/ts3.4/es/api/form/appearances.d.ts +11 -11
- package/ts3.4/es/api/form/index.d.ts +10 -10
- package/ts3.4/es/api/image/index.d.ts +1 -1
- package/ts3.4/es/api/index.d.ts +20 -20
- package/ts3.4/es/api/objects.d.ts +1 -1
- package/ts3.4/es/api/operations.d.ts +5 -4
- package/ts3.4/es/api/operators.d.ts +6 -1
- package/ts3.4/es/api/rotations.d.ts +1 -1
- package/ts3.4/es/api/svg.d.ts +65 -0
- package/ts3.4/es/api/svgPath.d.ts +1 -1
- package/ts3.4/es/api/text/index.d.ts +2 -2
- package/ts3.4/es/api/text/layout.d.ts +3 -3
- package/ts3.4/es/core/PDFContext.d.ts +17 -16
- package/ts3.4/es/core/PDFObjectCopier.d.ts +2 -2
- package/ts3.4/es/core/acroform/PDFAcroButton.d.ts +7 -7
- package/ts3.4/es/core/acroform/PDFAcroCheckBox.d.ts +5 -5
- package/ts3.4/es/core/acroform/PDFAcroChoice.d.ts +4 -4
- package/ts3.4/es/core/acroform/PDFAcroComboBox.d.ts +4 -4
- package/ts3.4/es/core/acroform/PDFAcroField.d.ts +8 -8
- package/ts3.4/es/core/acroform/PDFAcroForm.d.ts +5 -5
- package/ts3.4/es/core/acroform/PDFAcroListBox.d.ts +4 -4
- package/ts3.4/es/core/acroform/PDFAcroNonTerminal.d.ts +4 -4
- package/ts3.4/es/core/acroform/PDFAcroPushButton.d.ts +4 -4
- package/ts3.4/es/core/acroform/PDFAcroRadioButton.d.ts +5 -5
- package/ts3.4/es/core/acroform/PDFAcroSignature.d.ts +3 -3
- package/ts3.4/es/core/acroform/PDFAcroTerminal.d.ts +5 -5
- package/ts3.4/es/core/acroform/PDFAcroText.d.ts +7 -7
- package/ts3.4/es/core/acroform/index.d.ts +15 -15
- package/ts3.4/es/core/acroform/utils.d.ts +4 -4
- package/ts3.4/es/core/annotation/AppearanceCharacteristics.d.ts +5 -5
- package/ts3.4/es/core/annotation/BorderStyle.d.ts +2 -2
- package/ts3.4/es/core/annotation/PDFAnnotation.d.ts +6 -6
- package/ts3.4/es/core/annotation/PDFWidgetAnnotation.d.ts +9 -9
- package/ts3.4/es/core/annotation/index.d.ts +4 -4
- package/ts3.4/es/core/crypto.d.ts +96 -0
- package/ts3.4/es/core/document/PDFCrossRefSection.d.ts +1 -1
- package/ts3.4/es/core/document/PDFTrailerDict.d.ts +1 -1
- package/ts3.4/es/core/embedders/CMap.d.ts +1 -1
- package/ts3.4/es/core/embedders/CustomFontEmbedder.d.ts +5 -5
- package/ts3.4/es/core/embedders/CustomFontSubsetEmbedder.d.ts +3 -3
- package/ts3.4/es/core/embedders/FileEmbedder.d.ts +2 -2
- package/ts3.4/es/core/embedders/FontFlags.d.ts +1 -1
- package/ts3.4/es/core/embedders/JavaScriptEmbedder.d.ts +2 -2
- package/ts3.4/es/core/embedders/JpegEmbedder.d.ts +2 -2
- package/ts3.4/es/core/embedders/PDFPageEmbedder.d.ts +4 -4
- package/ts3.4/es/core/embedders/PngEmbedder.d.ts +2 -2
- package/ts3.4/es/core/embedders/StandardFontEmbedder.d.ts +3 -3
- package/ts3.4/es/core/errors.d.ts +1 -1
- package/ts3.4/es/core/index.d.ts +47 -47
- package/ts3.4/es/core/interactive/ViewerPreferences.d.ts +6 -6
- package/ts3.4/es/core/objects/PDFArray.d.ts +12 -12
- package/ts3.4/es/core/objects/PDFBool.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFDict.d.ts +12 -11
- package/ts3.4/es/core/objects/PDFHexString.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFInvalidObject.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFName.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFNull.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFNumber.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFObject.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFRawStream.d.ts +6 -4
- package/ts3.4/es/core/objects/PDFRef.d.ts +1 -1
- package/ts3.4/es/core/objects/PDFStream.d.ts +3 -3
- package/ts3.4/es/core/objects/PDFString.d.ts +1 -1
- package/ts3.4/es/core/operators/PDFOperator.d.ts +7 -7
- package/ts3.4/es/core/parser/BaseParser.d.ts +1 -1
- package/ts3.4/es/core/parser/ByteStream.d.ts +1 -1
- package/ts3.4/es/core/parser/PDFObjectParser.d.ts +22 -20
- package/ts3.4/es/core/parser/PDFObjectStreamParser.d.ts +2 -2
- package/ts3.4/es/core/parser/PDFParser.d.ts +5 -4
- package/ts3.4/es/core/parser/PDFXRefStreamParser.d.ts +2 -2
- package/ts3.4/es/core/streams/Ascii85Stream.d.ts +2 -2
- package/ts3.4/es/core/streams/AsciiHexStream.d.ts +2 -2
- package/ts3.4/es/core/streams/DecodeStream.d.ts +1 -1
- package/ts3.4/es/core/streams/DecryptStream.d.ts +13 -0
- package/ts3.4/es/core/streams/FlateStream.d.ts +2 -2
- package/ts3.4/es/core/streams/LZWStream.d.ts +3 -3
- package/ts3.4/es/core/streams/RunLengthStream.d.ts +2 -2
- package/ts3.4/es/core/streams/decode.d.ts +3 -3
- package/ts3.4/es/core/structures/PDFCatalog.d.ts +5 -5
- package/ts3.4/es/core/structures/PDFContentStream.d.ts +4 -4
- package/ts3.4/es/core/structures/PDFCrossRefStream.d.ts +4 -4
- package/ts3.4/es/core/structures/PDFFlateStream.d.ts +3 -3
- package/ts3.4/es/core/structures/PDFObjectStream.d.ts +4 -4
- package/ts3.4/es/core/structures/PDFPageLeaf.d.ts +9 -9
- package/ts3.4/es/core/structures/PDFPageTree.d.ts +6 -6
- package/ts3.4/es/core/syntax/Keywords.d.ts +1 -1
- package/ts3.4/es/core/writers/PDFStreamWriter.d.ts +6 -6
- package/ts3.4/es/core/writers/PDFWriter.d.ts +8 -8
- package/ts3.4/es/index.d.ts +4 -4
- package/ts3.4/es/types/index.d.ts +25 -1
- package/ts3.4/es/utils/arrays.d.ts +2 -1
- package/ts3.4/es/utils/elements/Arc.d.ts +23 -0
- package/ts3.4/es/utils/elements/Circle.d.ts +15 -0
- package/ts3.4/es/utils/elements/Ellipse.d.ts +21 -0
- package/ts3.4/es/utils/elements/GraphElement.d.ts +7 -0
- package/ts3.4/es/utils/elements/Line.d.ts +24 -0
- package/ts3.4/es/utils/elements/Plot.d.ts +12 -0
- package/ts3.4/es/utils/elements/Point.d.ts +19 -0
- package/ts3.4/es/utils/elements/Rectangle.d.ts +22 -0
- package/ts3.4/es/utils/elements/Segment.d.ts +20 -0
- package/ts3.4/es/utils/elements/index.d.ts +10 -0
- package/ts3.4/es/utils/index.d.ts +11 -11
- package/ts3.4/es/utils/intersections.d.ts +10 -0
- package/ts3.4/es/utils/maths.d.ts +46 -0
- package/ts3.4/es/utils/strings.d.ts +1 -0
- package/yarn.lock +0 -4408
package/es/api/PDFDocument.js
CHANGED
|
@@ -1,48 +1,52 @@
|
|
|
1
|
-
import { __awaiter,
|
|
2
|
-
import { EncryptedPDFError, FontkitNotRegisteredError, ForeignPageError, RemovePageFromEmptyDocumentError, } from
|
|
3
|
-
import PDFEmbeddedPage from
|
|
4
|
-
import PDFFont from
|
|
5
|
-
import PDFImage from
|
|
6
|
-
import PDFPage from
|
|
7
|
-
import PDFForm from
|
|
8
|
-
import { PageSizes } from
|
|
9
|
-
import { CustomFontEmbedder, CustomFontSubsetEmbedder, JpegEmbedder, PageEmbeddingMismatchedContextError, PDFCatalog, PDFContext, PDFDict, PDFHexString, PDFName, PDFObjectCopier, PDFPageEmbedder, PDFPageLeaf, PDFPageTree, PDFParser, PDFStreamWriter, PDFString, PDFWriter, PngEmbedder, StandardFontEmbedder, UnexpectedObjectTypeError, } from
|
|
10
|
-
import { ParseSpeeds, } from
|
|
11
|
-
import { assertIs, assertIsOneOfOrUndefined, assertOrUndefined, assertRange, Cache, canBeConvertedToUint8Array, encodeToBase64, isStandardFont, pluckIndices, range, toUint8Array, } from
|
|
12
|
-
import FileEmbedder, { AFRelationship } from
|
|
13
|
-
import PDFEmbeddedFile from
|
|
14
|
-
import PDFJavaScript from
|
|
15
|
-
import JavaScriptEmbedder from
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { EncryptedPDFError, FontkitNotRegisteredError, ForeignPageError, RemovePageFromEmptyDocumentError, } from './errors.js';
|
|
3
|
+
import PDFEmbeddedPage from './PDFEmbeddedPage.js';
|
|
4
|
+
import PDFFont from './PDFFont.js';
|
|
5
|
+
import PDFImage from './PDFImage.js';
|
|
6
|
+
import PDFPage from './PDFPage.js';
|
|
7
|
+
import PDFForm from './form/PDFForm.js';
|
|
8
|
+
import { PageSizes } from './sizes.js';
|
|
9
|
+
import { CustomFontEmbedder, CustomFontSubsetEmbedder, JpegEmbedder, PageEmbeddingMismatchedContextError, PDFArray, PDFCatalog, PDFContext, PDFDict, PDFHexString, PDFName, PDFObjectCopier, PDFPageEmbedder, PDFPageLeaf, PDFPageTree, PDFParser, PDFStreamWriter, PDFString, PDFWriter, PngEmbedder, StandardFontEmbedder, UnexpectedObjectTypeError, } from '../core/index.js';
|
|
10
|
+
import { ParseSpeeds, } from './PDFDocumentOptions.js';
|
|
11
|
+
import { assertIs, assertIsOneOfOrUndefined, assertOrUndefined, assertRange, Cache, canBeConvertedToUint8Array, encodeToBase64, isStandardFont, pluckIndices, range, toUint8Array, } from '../utils/index.js';
|
|
12
|
+
import FileEmbedder, { AFRelationship } from '../core/embedders/FileEmbedder.js';
|
|
13
|
+
import PDFEmbeddedFile from './PDFEmbeddedFile.js';
|
|
14
|
+
import PDFJavaScript from './PDFJavaScript.js';
|
|
15
|
+
import JavaScriptEmbedder from '../core/embedders/JavaScriptEmbedder.js';
|
|
16
|
+
import { CipherTransformFactory } from '../core/crypto.js';
|
|
16
17
|
/**
|
|
17
18
|
* Represents a PDF document.
|
|
18
19
|
*/
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
var _this = this;
|
|
20
|
+
export default class PDFDocument {
|
|
21
|
+
constructor(context, ignoreEncryption, updateMetadata) {
|
|
22
22
|
/** The default word breaks used in PDFPage.drawText */
|
|
23
23
|
this.defaultWordBreaks = [' '];
|
|
24
|
-
this.computePages =
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
this.computePages = () => {
|
|
25
|
+
const pages = [];
|
|
26
|
+
this.catalog.Pages().traverse((node, ref) => {
|
|
27
27
|
if (node instanceof PDFPageLeaf) {
|
|
28
|
-
|
|
28
|
+
let page = this.pageMap.get(node);
|
|
29
29
|
if (!page) {
|
|
30
|
-
page = PDFPage.of(node, ref,
|
|
31
|
-
|
|
30
|
+
page = PDFPage.of(node, ref, this);
|
|
31
|
+
this.pageMap.set(node, page);
|
|
32
32
|
}
|
|
33
33
|
pages.push(page);
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
return pages;
|
|
37
37
|
};
|
|
38
|
-
this.getOrCreateForm =
|
|
39
|
-
|
|
40
|
-
return PDFForm.of(acroForm,
|
|
38
|
+
this.getOrCreateForm = () => {
|
|
39
|
+
const acroForm = this.catalog.getOrCreateAcroForm();
|
|
40
|
+
return PDFForm.of(acroForm, this);
|
|
41
41
|
};
|
|
42
42
|
assertIs(context, 'context', [[PDFContext, 'PDFContext']]);
|
|
43
43
|
assertIs(ignoreEncryption, 'ignoreEncryption', ['boolean']);
|
|
44
44
|
this.context = context;
|
|
45
45
|
this.catalog = context.lookup(context.trailerInfo.Root);
|
|
46
|
+
if (!!context.lookup(context.trailerInfo.Encrypt) && context.isDecrypted) {
|
|
47
|
+
// context.delete(context.trailerInfo.Encrypt);
|
|
48
|
+
delete context.trailerInfo.Encrypt;
|
|
49
|
+
}
|
|
46
50
|
this.isEncrypted = !!context.lookup(context.trailerInfo.Encrypt);
|
|
47
51
|
this.pageCache = Cache.populatedBy(this.computePages);
|
|
48
52
|
this.pageMap = new Map();
|
|
@@ -109,46 +113,43 @@ var PDFDocument = /** @class */ (function () {
|
|
|
109
113
|
* @param options The options to be used when loading the document.
|
|
110
114
|
* @returns Resolves with a document loaded from the input.
|
|
111
115
|
*/
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
116
|
+
static load(pdf, options = {}) {
|
|
117
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
+
const { ignoreEncryption = false, parseSpeed = ParseSpeeds.Slow, throwOnInvalidObject = false, updateMetadata = true, capNumbers = false, password, } = options;
|
|
119
|
+
assertIs(pdf, 'pdf', ['string', Uint8Array, ArrayBuffer]);
|
|
120
|
+
assertIs(ignoreEncryption, 'ignoreEncryption', ['boolean']);
|
|
121
|
+
assertIs(parseSpeed, 'parseSpeed', ['number']);
|
|
122
|
+
assertIs(throwOnInvalidObject, 'throwOnInvalidObject', ['boolean']);
|
|
123
|
+
assertIs(password, 'password', ['string', 'undefined']);
|
|
124
|
+
const bytes = toUint8Array(pdf);
|
|
125
|
+
const context = yield PDFParser.forBytesWithOptions(bytes, parseSpeed, throwOnInvalidObject, capNumbers).parseDocument();
|
|
126
|
+
if (!!context.lookup(context.trailerInfo.Encrypt) && password !== undefined) {
|
|
127
|
+
// Decrypt
|
|
128
|
+
const fileIds = context.lookup(context.trailerInfo.ID, PDFArray);
|
|
129
|
+
const encryptDict = context.lookup(context.trailerInfo.Encrypt, PDFDict);
|
|
130
|
+
const decryptedContext = yield PDFParser.forBytesWithOptions(bytes, parseSpeed, throwOnInvalidObject, capNumbers, new CipherTransformFactory(encryptDict, fileIds.get(0).asBytes(), password)).parseDocument();
|
|
131
|
+
return new PDFDocument(decryptedContext, true, updateMetadata);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
return new PDFDocument(context, ignoreEncryption, updateMetadata);
|
|
135
|
+
}
|
|
131
136
|
});
|
|
132
|
-
}
|
|
137
|
+
}
|
|
133
138
|
/**
|
|
134
139
|
* Create a new [[PDFDocument]].
|
|
135
140
|
* @returns Resolves with the newly created document.
|
|
136
141
|
*/
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
catalog = PDFCatalog.withContextAndPages(context, pageTreeRef);
|
|
147
|
-
context.trailerInfo.Root = context.register(catalog);
|
|
148
|
-
return [2 /*return*/, new PDFDocument(context, false, updateMetadata)];
|
|
149
|
-
});
|
|
142
|
+
static create(options = {}) {
|
|
143
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
144
|
+
const { updateMetadata = true } = options;
|
|
145
|
+
const context = PDFContext.create();
|
|
146
|
+
const pageTree = PDFPageTree.withContext(context);
|
|
147
|
+
const pageTreeRef = context.register(pageTree);
|
|
148
|
+
const catalog = PDFCatalog.withContextAndPages(context, pageTreeRef);
|
|
149
|
+
context.trailerInfo.Root = context.register(catalog);
|
|
150
|
+
return new PDFDocument(context, false, updateMetadata);
|
|
150
151
|
});
|
|
151
|
-
}
|
|
152
|
+
}
|
|
152
153
|
/**
|
|
153
154
|
* Register a fontkit instance. This must be done before custom fonts can
|
|
154
155
|
* be embedded. See [here](https://github.com/Hopding/pdf-lib/tree/master#fontkit-installation)
|
|
@@ -167,9 +168,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
167
168
|
*
|
|
168
169
|
* @param fontkit The fontkit instance to be registered.
|
|
169
170
|
*/
|
|
170
|
-
|
|
171
|
+
registerFontkit(fontkit) {
|
|
171
172
|
this.fontkit = fontkit;
|
|
172
|
-
}
|
|
173
|
+
}
|
|
173
174
|
/**
|
|
174
175
|
* Get the [[PDFForm]] containing all interactive fields for this document.
|
|
175
176
|
* For example:
|
|
@@ -184,14 +185,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
184
185
|
* ```
|
|
185
186
|
* @returns The form for this document.
|
|
186
187
|
*/
|
|
187
|
-
|
|
188
|
-
|
|
188
|
+
getForm() {
|
|
189
|
+
const form = this.formCache.access();
|
|
189
190
|
if (form.hasXFA()) {
|
|
190
191
|
console.warn('Removing XFA form data as pdf-lib does not support reading or writing XFA');
|
|
191
192
|
form.deleteXFA();
|
|
192
193
|
}
|
|
193
194
|
return form;
|
|
194
|
-
}
|
|
195
|
+
}
|
|
195
196
|
/**
|
|
196
197
|
* Get this document's title metadata. The title appears in the
|
|
197
198
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -200,13 +201,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
200
201
|
* ```
|
|
201
202
|
* @returns A string containing the title of this document, if it has one.
|
|
202
203
|
*/
|
|
203
|
-
|
|
204
|
-
|
|
204
|
+
getTitle() {
|
|
205
|
+
const title = this.getInfoDict().lookup(PDFName.Title);
|
|
205
206
|
if (!title)
|
|
206
207
|
return undefined;
|
|
207
208
|
assertIsLiteralOrHexString(title);
|
|
208
209
|
return title.decodeText();
|
|
209
|
-
}
|
|
210
|
+
}
|
|
210
211
|
/**
|
|
211
212
|
* Get this document's author metadata. The author appears in the
|
|
212
213
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -215,13 +216,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
215
216
|
* ```
|
|
216
217
|
* @returns A string containing the author of this document, if it has one.
|
|
217
218
|
*/
|
|
218
|
-
|
|
219
|
-
|
|
219
|
+
getAuthor() {
|
|
220
|
+
const author = this.getInfoDict().lookup(PDFName.Author);
|
|
220
221
|
if (!author)
|
|
221
222
|
return undefined;
|
|
222
223
|
assertIsLiteralOrHexString(author);
|
|
223
224
|
return author.decodeText();
|
|
224
|
-
}
|
|
225
|
+
}
|
|
225
226
|
/**
|
|
226
227
|
* Get this document's subject metadata. The subject appears in the
|
|
227
228
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -230,13 +231,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
230
231
|
* ```
|
|
231
232
|
* @returns A string containing the subject of this document, if it has one.
|
|
232
233
|
*/
|
|
233
|
-
|
|
234
|
-
|
|
234
|
+
getSubject() {
|
|
235
|
+
const subject = this.getInfoDict().lookup(PDFName.Subject);
|
|
235
236
|
if (!subject)
|
|
236
237
|
return undefined;
|
|
237
238
|
assertIsLiteralOrHexString(subject);
|
|
238
239
|
return subject.decodeText();
|
|
239
|
-
}
|
|
240
|
+
}
|
|
240
241
|
/**
|
|
241
242
|
* Get this document's keywords metadata. The keywords appear in the
|
|
242
243
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -245,13 +246,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
245
246
|
* ```
|
|
246
247
|
* @returns A string containing the keywords of this document, if it has any.
|
|
247
248
|
*/
|
|
248
|
-
|
|
249
|
-
|
|
249
|
+
getKeywords() {
|
|
250
|
+
const keywords = this.getInfoDict().lookup(PDFName.Keywords);
|
|
250
251
|
if (!keywords)
|
|
251
252
|
return undefined;
|
|
252
253
|
assertIsLiteralOrHexString(keywords);
|
|
253
254
|
return keywords.decodeText();
|
|
254
|
-
}
|
|
255
|
+
}
|
|
255
256
|
/**
|
|
256
257
|
* Get this document's creator metadata. The creator appears in the
|
|
257
258
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -260,13 +261,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
260
261
|
* ```
|
|
261
262
|
* @returns A string containing the creator of this document, if it has one.
|
|
262
263
|
*/
|
|
263
|
-
|
|
264
|
-
|
|
264
|
+
getCreator() {
|
|
265
|
+
const creator = this.getInfoDict().lookup(PDFName.Creator);
|
|
265
266
|
if (!creator)
|
|
266
267
|
return undefined;
|
|
267
268
|
assertIsLiteralOrHexString(creator);
|
|
268
269
|
return creator.decodeText();
|
|
269
|
-
}
|
|
270
|
+
}
|
|
270
271
|
/**
|
|
271
272
|
* Get this document's producer metadata. The producer appears in the
|
|
272
273
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -275,13 +276,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
275
276
|
* ```
|
|
276
277
|
* @returns A string containing the producer of this document, if it has one.
|
|
277
278
|
*/
|
|
278
|
-
|
|
279
|
-
|
|
279
|
+
getProducer() {
|
|
280
|
+
const producer = this.getInfoDict().lookup(PDFName.Producer);
|
|
280
281
|
if (!producer)
|
|
281
282
|
return undefined;
|
|
282
283
|
assertIsLiteralOrHexString(producer);
|
|
283
284
|
return producer.decodeText();
|
|
284
|
-
}
|
|
285
|
+
}
|
|
285
286
|
/**
|
|
286
287
|
* Get this document's creation date metadata. The creation date appears in
|
|
287
288
|
* the "Document Properties" section of most PDF readers. For example:
|
|
@@ -291,13 +292,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
291
292
|
* @returns A Date containing the creation date of this document,
|
|
292
293
|
* if it has one.
|
|
293
294
|
*/
|
|
294
|
-
|
|
295
|
-
|
|
295
|
+
getCreationDate() {
|
|
296
|
+
const creationDate = this.getInfoDict().lookup(PDFName.CreationDate);
|
|
296
297
|
if (!creationDate)
|
|
297
298
|
return undefined;
|
|
298
299
|
assertIsLiteralOrHexString(creationDate);
|
|
299
300
|
return creationDate.decodeDate();
|
|
300
|
-
}
|
|
301
|
+
}
|
|
301
302
|
/**
|
|
302
303
|
* Get this document's modification date metadata. The modification date
|
|
303
304
|
* appears in the "Document Properties" section of most PDF readers.
|
|
@@ -308,13 +309,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
308
309
|
* @returns A Date containing the modification date of this document,
|
|
309
310
|
* if it has one.
|
|
310
311
|
*/
|
|
311
|
-
|
|
312
|
-
|
|
312
|
+
getModificationDate() {
|
|
313
|
+
const modificationDate = this.getInfoDict().lookup(PDFName.ModDate);
|
|
313
314
|
if (!modificationDate)
|
|
314
315
|
return undefined;
|
|
315
316
|
assertIsLiteralOrHexString(modificationDate);
|
|
316
317
|
return modificationDate.decodeDate();
|
|
317
|
-
}
|
|
318
|
+
}
|
|
318
319
|
/**
|
|
319
320
|
* Set this document's title metadata. The title will appear in the
|
|
320
321
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -332,16 +333,16 @@ var PDFDocument = /** @class */ (function () {
|
|
|
332
333
|
* @param title The title of this document.
|
|
333
334
|
* @param options The options to be used when setting the title.
|
|
334
335
|
*/
|
|
335
|
-
|
|
336
|
+
setTitle(title, options) {
|
|
336
337
|
assertIs(title, 'title', ['string']);
|
|
337
|
-
|
|
338
|
+
const key = PDFName.of('Title');
|
|
338
339
|
this.getInfoDict().set(key, PDFHexString.fromText(title));
|
|
339
340
|
// Indicate that readers should display the title rather than the filename
|
|
340
341
|
if (options === null || options === void 0 ? void 0 : options.showInWindowTitleBar) {
|
|
341
|
-
|
|
342
|
+
const prefs = this.catalog.getOrCreateViewerPreferences();
|
|
342
343
|
prefs.setDisplayDocTitle(true);
|
|
343
344
|
}
|
|
344
|
-
}
|
|
345
|
+
}
|
|
345
346
|
/**
|
|
346
347
|
* Set this document's author metadata. The author will appear in the
|
|
347
348
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -350,11 +351,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
350
351
|
* ```
|
|
351
352
|
* @param author The author of this document.
|
|
352
353
|
*/
|
|
353
|
-
|
|
354
|
+
setAuthor(author) {
|
|
354
355
|
assertIs(author, 'author', ['string']);
|
|
355
|
-
|
|
356
|
+
const key = PDFName.of('Author');
|
|
356
357
|
this.getInfoDict().set(key, PDFHexString.fromText(author));
|
|
357
|
-
}
|
|
358
|
+
}
|
|
358
359
|
/**
|
|
359
360
|
* Set this document's subject metadata. The subject will appear in the
|
|
360
361
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -363,11 +364,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
363
364
|
* ```
|
|
364
365
|
* @param subject The subject of this document.
|
|
365
366
|
*/
|
|
366
|
-
|
|
367
|
+
setSubject(subject) {
|
|
367
368
|
assertIs(subject, 'author', ['string']);
|
|
368
|
-
|
|
369
|
+
const key = PDFName.of('Subject');
|
|
369
370
|
this.getInfoDict().set(key, PDFHexString.fromText(subject));
|
|
370
|
-
}
|
|
371
|
+
}
|
|
371
372
|
/**
|
|
372
373
|
* Set this document's keyword metadata. These keywords will appear in the
|
|
373
374
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -376,11 +377,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
376
377
|
* ```
|
|
377
378
|
* @param keywords An array of keywords associated with this document.
|
|
378
379
|
*/
|
|
379
|
-
|
|
380
|
+
setKeywords(keywords) {
|
|
380
381
|
assertIs(keywords, 'keywords', [Array]);
|
|
381
|
-
|
|
382
|
+
const key = PDFName.of('Keywords');
|
|
382
383
|
this.getInfoDict().set(key, PDFHexString.fromText(keywords.join(' ')));
|
|
383
|
-
}
|
|
384
|
+
}
|
|
384
385
|
/**
|
|
385
386
|
* Set this document's creator metadata. The creator will appear in the
|
|
386
387
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -389,11 +390,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
389
390
|
* ```
|
|
390
391
|
* @param creator The creator of this document.
|
|
391
392
|
*/
|
|
392
|
-
|
|
393
|
+
setCreator(creator) {
|
|
393
394
|
assertIs(creator, 'creator', ['string']);
|
|
394
|
-
|
|
395
|
+
const key = PDFName.of('Creator');
|
|
395
396
|
this.getInfoDict().set(key, PDFHexString.fromText(creator));
|
|
396
|
-
}
|
|
397
|
+
}
|
|
397
398
|
/**
|
|
398
399
|
* Set this document's producer metadata. The producer will appear in the
|
|
399
400
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -402,11 +403,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
402
403
|
* ```
|
|
403
404
|
* @param producer The producer of this document.
|
|
404
405
|
*/
|
|
405
|
-
|
|
406
|
+
setProducer(producer) {
|
|
406
407
|
assertIs(producer, 'creator', ['string']);
|
|
407
|
-
|
|
408
|
+
const key = PDFName.of('Producer');
|
|
408
409
|
this.getInfoDict().set(key, PDFHexString.fromText(producer));
|
|
409
|
-
}
|
|
410
|
+
}
|
|
410
411
|
/**
|
|
411
412
|
* Set this document's language metadata. The language will appear in the
|
|
412
413
|
* "Document Properties" section of some PDF readers. For example:
|
|
@@ -417,11 +418,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
417
418
|
* @param language An RFC 3066 _Language-Tag_ denoting the language of this
|
|
418
419
|
* document, or an empty string if the language is unknown.
|
|
419
420
|
*/
|
|
420
|
-
|
|
421
|
+
setLanguage(language) {
|
|
421
422
|
assertIs(language, 'language', ['string']);
|
|
422
|
-
|
|
423
|
+
const key = PDFName.of('Lang');
|
|
423
424
|
this.catalog.set(key, PDFString.of(language));
|
|
424
|
-
}
|
|
425
|
+
}
|
|
425
426
|
/**
|
|
426
427
|
* Set this document's creation date metadata. The creation date will appear
|
|
427
428
|
* in the "Document Properties" section of most PDF readers. For example:
|
|
@@ -430,11 +431,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
430
431
|
* ```
|
|
431
432
|
* @param creationDate The date this document was created.
|
|
432
433
|
*/
|
|
433
|
-
|
|
434
|
+
setCreationDate(creationDate) {
|
|
434
435
|
assertIs(creationDate, 'creationDate', [[Date, 'Date']]);
|
|
435
|
-
|
|
436
|
+
const key = PDFName.of('CreationDate');
|
|
436
437
|
this.getInfoDict().set(key, PDFString.fromDate(creationDate));
|
|
437
|
-
}
|
|
438
|
+
}
|
|
438
439
|
/**
|
|
439
440
|
* Set this document's modification date metadata. The modification date will
|
|
440
441
|
* appear in the "Document Properties" section of most PDF readers. For
|
|
@@ -444,11 +445,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
444
445
|
* ```
|
|
445
446
|
* @param modificationDate The date this document was last modified.
|
|
446
447
|
*/
|
|
447
|
-
|
|
448
|
+
setModificationDate(modificationDate) {
|
|
448
449
|
assertIs(modificationDate, 'modificationDate', [[Date, 'Date']]);
|
|
449
|
-
|
|
450
|
+
const key = PDFName.of('ModDate');
|
|
450
451
|
this.getInfoDict().set(key, PDFString.fromDate(modificationDate));
|
|
451
|
-
}
|
|
452
|
+
}
|
|
452
453
|
/**
|
|
453
454
|
* Get the number of pages contained in this document. For example:
|
|
454
455
|
* ```js
|
|
@@ -456,11 +457,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
456
457
|
* ```
|
|
457
458
|
* @returns The number of pages in this document.
|
|
458
459
|
*/
|
|
459
|
-
|
|
460
|
+
getPageCount() {
|
|
460
461
|
if (this.pageCount === undefined)
|
|
461
462
|
this.pageCount = this.getPages().length;
|
|
462
463
|
return this.pageCount;
|
|
463
|
-
}
|
|
464
|
+
}
|
|
464
465
|
/**
|
|
465
466
|
* Get an array of all the pages contained in this document. The pages are
|
|
466
467
|
* stored in the array in the same order that they are rendered in the
|
|
@@ -473,9 +474,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
473
474
|
* ```
|
|
474
475
|
* @returns An array of all the pages contained in this document.
|
|
475
476
|
*/
|
|
476
|
-
|
|
477
|
+
getPages() {
|
|
477
478
|
return this.pageCache.access();
|
|
478
|
-
}
|
|
479
|
+
}
|
|
479
480
|
/**
|
|
480
481
|
* Get the page rendered at a particular `index` of the document. For example:
|
|
481
482
|
* ```js
|
|
@@ -485,11 +486,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
485
486
|
* ```
|
|
486
487
|
* @returns The [[PDFPage]] rendered at the given `index` of the document.
|
|
487
488
|
*/
|
|
488
|
-
|
|
489
|
-
|
|
489
|
+
getPage(index) {
|
|
490
|
+
const pages = this.getPages();
|
|
490
491
|
assertRange(index, 'index', 0, pages.length - 1);
|
|
491
492
|
return pages[index];
|
|
492
|
-
}
|
|
493
|
+
}
|
|
493
494
|
/**
|
|
494
495
|
* Get an array of indices for all the pages contained in this document. The
|
|
495
496
|
* array will contain a range of integers from
|
|
@@ -505,9 +506,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
505
506
|
* ```
|
|
506
507
|
* @returns An array of indices for all pages contained in this document.
|
|
507
508
|
*/
|
|
508
|
-
|
|
509
|
+
getPageIndices() {
|
|
509
510
|
return range(0, this.getPageCount());
|
|
510
|
-
}
|
|
511
|
+
}
|
|
511
512
|
/**
|
|
512
513
|
* Remove the page at a given index from this document. For example:
|
|
513
514
|
* ```js
|
|
@@ -519,14 +520,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
519
520
|
* in the document.
|
|
520
521
|
* @param index The index of the page to be removed.
|
|
521
522
|
*/
|
|
522
|
-
|
|
523
|
-
|
|
523
|
+
removePage(index) {
|
|
524
|
+
const pageCount = this.getPageCount();
|
|
524
525
|
if (this.pageCount === 0)
|
|
525
526
|
throw new RemovePageFromEmptyDocumentError();
|
|
526
527
|
assertRange(index, 'index', 0, pageCount - 1);
|
|
527
528
|
this.catalog.removeLeafNode(index);
|
|
528
529
|
this.pageCount = pageCount - 1;
|
|
529
|
-
}
|
|
530
|
+
}
|
|
530
531
|
/**
|
|
531
532
|
* Add a page to the end of this document. This method accepts three
|
|
532
533
|
* different value types for the `page` parameter:
|
|
@@ -558,10 +559,10 @@ var PDFDocument = /** @class */ (function () {
|
|
|
558
559
|
* @param page Optionally, the desired dimensions or existing page.
|
|
559
560
|
* @returns The newly created (or existing) page.
|
|
560
561
|
*/
|
|
561
|
-
|
|
562
|
+
addPage(page) {
|
|
562
563
|
assertIs(page, 'page', ['undefined', [PDFPage, 'PDFPage'], Array]);
|
|
563
564
|
return this.insertPage(this.getPageCount(), page);
|
|
564
|
-
}
|
|
565
|
+
}
|
|
565
566
|
/**
|
|
566
567
|
* Insert a page at a given index within this document. This method accepts
|
|
567
568
|
* three different value types for the `page` parameter:
|
|
@@ -594,25 +595,25 @@ var PDFDocument = /** @class */ (function () {
|
|
|
594
595
|
* @param page Optionally, the desired dimensions or existing page.
|
|
595
596
|
* @returns The newly created (or existing) page.
|
|
596
597
|
*/
|
|
597
|
-
|
|
598
|
-
|
|
598
|
+
insertPage(index, page) {
|
|
599
|
+
const pageCount = this.getPageCount();
|
|
599
600
|
assertRange(index, 'index', 0, pageCount);
|
|
600
601
|
assertIs(page, 'page', ['undefined', [PDFPage, 'PDFPage'], Array]);
|
|
601
602
|
if (!page || Array.isArray(page)) {
|
|
602
|
-
|
|
603
|
+
const dims = Array.isArray(page) ? page : PageSizes.A4;
|
|
603
604
|
page = PDFPage.create(this);
|
|
604
|
-
page.setSize
|
|
605
|
+
page.setSize(...dims);
|
|
605
606
|
}
|
|
606
607
|
else if (page.doc !== this) {
|
|
607
608
|
throw new ForeignPageError();
|
|
608
609
|
}
|
|
609
|
-
|
|
610
|
+
const parentRef = this.catalog.insertLeafNode(page.ref, index);
|
|
610
611
|
page.node.setParent(parentRef);
|
|
611
612
|
this.pageMap.set(page.node, page);
|
|
612
613
|
this.pageCache.invalidate();
|
|
613
614
|
this.pageCount = pageCount + 1;
|
|
614
615
|
return page;
|
|
615
|
-
}
|
|
616
|
+
}
|
|
616
617
|
/**
|
|
617
618
|
* Copy pages from a source document into this document. Allows pages to be
|
|
618
619
|
* copied between different [[PDFDocument]] instances. For example:
|
|
@@ -631,31 +632,23 @@ var PDFDocument = /** @class */ (function () {
|
|
|
631
632
|
* @param indices The indices of the pages that should be copied.
|
|
632
633
|
* @returns Resolves with an array of pages copied into this document.
|
|
633
634
|
*/
|
|
634
|
-
|
|
635
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
srcPage = srcPages[indices[idx]];
|
|
650
|
-
copiedPage = copier.copy(srcPage.node);
|
|
651
|
-
ref = this.context.register(copiedPage);
|
|
652
|
-
copiedPages[idx] = PDFPage.of(copiedPage, ref, this);
|
|
653
|
-
}
|
|
654
|
-
return [2 /*return*/, copiedPages];
|
|
655
|
-
}
|
|
656
|
-
});
|
|
635
|
+
copyPages(srcDoc, indices) {
|
|
636
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
637
|
+
assertIs(srcDoc, 'srcDoc', [[PDFDocument, 'PDFDocument']]);
|
|
638
|
+
assertIs(indices, 'indices', [Array]);
|
|
639
|
+
yield srcDoc.flush();
|
|
640
|
+
const copier = PDFObjectCopier.for(srcDoc.context, this.context);
|
|
641
|
+
const srcPages = srcDoc.getPages();
|
|
642
|
+
const copiedPages = new Array(indices.length);
|
|
643
|
+
for (let idx = 0, len = indices.length; idx < len; idx++) {
|
|
644
|
+
const srcPage = srcPages[indices[idx]];
|
|
645
|
+
const copiedPage = copier.copy(srcPage.node);
|
|
646
|
+
const ref = this.context.register(copiedPage);
|
|
647
|
+
copiedPages[idx] = PDFPage.of(copiedPage, ref, this);
|
|
648
|
+
}
|
|
649
|
+
return copiedPages;
|
|
657
650
|
});
|
|
658
|
-
}
|
|
651
|
+
}
|
|
659
652
|
/**
|
|
660
653
|
* Get a copy of this document.
|
|
661
654
|
*
|
|
@@ -670,47 +663,38 @@ var PDFDocument = /** @class */ (function () {
|
|
|
670
663
|
*
|
|
671
664
|
* @returns Resolves with a copy this document.
|
|
672
665
|
*/
|
|
673
|
-
|
|
674
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
pdfCopy.setSubject(this.getSubject());
|
|
704
|
-
}
|
|
705
|
-
if (this.getTitle() !== undefined) {
|
|
706
|
-
pdfCopy.setTitle(this.getTitle());
|
|
707
|
-
}
|
|
708
|
-
pdfCopy.defaultWordBreaks = this.defaultWordBreaks;
|
|
709
|
-
return [2 /*return*/, pdfCopy];
|
|
710
|
-
}
|
|
711
|
-
});
|
|
666
|
+
copy() {
|
|
667
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
668
|
+
const pdfCopy = yield PDFDocument.create();
|
|
669
|
+
const contentPages = yield pdfCopy.copyPages(this, this.getPageIndices());
|
|
670
|
+
for (let idx = 0, len = contentPages.length; idx < len; idx++) {
|
|
671
|
+
pdfCopy.addPage(contentPages[idx]);
|
|
672
|
+
}
|
|
673
|
+
if (this.getAuthor() !== undefined) {
|
|
674
|
+
pdfCopy.setAuthor(this.getAuthor());
|
|
675
|
+
}
|
|
676
|
+
if (this.getCreationDate() !== undefined) {
|
|
677
|
+
pdfCopy.setCreationDate(this.getCreationDate());
|
|
678
|
+
}
|
|
679
|
+
if (this.getCreator() !== undefined) {
|
|
680
|
+
pdfCopy.setCreator(this.getCreator());
|
|
681
|
+
}
|
|
682
|
+
if (this.getModificationDate() !== undefined) {
|
|
683
|
+
pdfCopy.setModificationDate(this.getModificationDate());
|
|
684
|
+
}
|
|
685
|
+
if (this.getProducer() !== undefined) {
|
|
686
|
+
pdfCopy.setProducer(this.getProducer());
|
|
687
|
+
}
|
|
688
|
+
if (this.getSubject() !== undefined) {
|
|
689
|
+
pdfCopy.setSubject(this.getSubject());
|
|
690
|
+
}
|
|
691
|
+
if (this.getTitle() !== undefined) {
|
|
692
|
+
pdfCopy.setTitle(this.getTitle());
|
|
693
|
+
}
|
|
694
|
+
pdfCopy.defaultWordBreaks = this.defaultWordBreaks;
|
|
695
|
+
return pdfCopy;
|
|
712
696
|
});
|
|
713
|
-
}
|
|
697
|
+
}
|
|
714
698
|
/**
|
|
715
699
|
* Add JavaScript to this document. The supplied `script` is executed when the
|
|
716
700
|
* document is opened. The `script` can be used to perform some operation
|
|
@@ -735,14 +719,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
735
719
|
* @param name The name of the script. Must be unique per document.
|
|
736
720
|
* @param script The JavaScript to execute.
|
|
737
721
|
*/
|
|
738
|
-
|
|
722
|
+
addJavaScript(name, script) {
|
|
739
723
|
assertIs(name, 'name', ['string']);
|
|
740
724
|
assertIs(script, 'script', ['string']);
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
725
|
+
const embedder = JavaScriptEmbedder.for(script, name);
|
|
726
|
+
const ref = this.context.nextRef();
|
|
727
|
+
const javaScript = PDFJavaScript.of(ref, this, embedder);
|
|
744
728
|
this.javaScripts.push(javaScript);
|
|
745
|
-
}
|
|
729
|
+
}
|
|
746
730
|
/**
|
|
747
731
|
* Add an attachment to this document. Attachments are visible in the
|
|
748
732
|
* "Attachments" panel of Adobe Acrobat and some other PDF readers. Any
|
|
@@ -798,29 +782,24 @@ var PDFDocument = /** @class */ (function () {
|
|
|
798
782
|
* @param name The name of the file to be attached.
|
|
799
783
|
* @returns Resolves when the attachment is complete.
|
|
800
784
|
*/
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
ref = this.context.nextRef();
|
|
818
|
-
embeddedFile = PDFEmbeddedFile.of(ref, this, embedder);
|
|
819
|
-
this.embeddedFiles.push(embeddedFile);
|
|
820
|
-
return [2 /*return*/];
|
|
821
|
-
});
|
|
785
|
+
attach(attachment, name, options = {}) {
|
|
786
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
787
|
+
assertIs(attachment, 'attachment', ['string', Uint8Array, ArrayBuffer]);
|
|
788
|
+
assertIs(name, 'name', ['string']);
|
|
789
|
+
assertOrUndefined(options.mimeType, 'mimeType', ['string']);
|
|
790
|
+
assertOrUndefined(options.description, 'description', ['string']);
|
|
791
|
+
assertOrUndefined(options.creationDate, 'options.creationDate', [Date]);
|
|
792
|
+
assertOrUndefined(options.modificationDate, 'options.modificationDate', [
|
|
793
|
+
Date,
|
|
794
|
+
]);
|
|
795
|
+
assertIsOneOfOrUndefined(options.afRelationship, 'options.afRelationship', AFRelationship);
|
|
796
|
+
const bytes = toUint8Array(attachment);
|
|
797
|
+
const embedder = FileEmbedder.for(bytes, name, options);
|
|
798
|
+
const ref = this.context.nextRef();
|
|
799
|
+
const embeddedFile = PDFEmbeddedFile.of(ref, this, embedder);
|
|
800
|
+
this.embeddedFiles.push(embeddedFile);
|
|
822
801
|
});
|
|
823
|
-
}
|
|
802
|
+
}
|
|
824
803
|
/**
|
|
825
804
|
* Embed a font into this document. The input data can be provided in multiple
|
|
826
805
|
* formats:
|
|
@@ -856,45 +835,31 @@ var PDFDocument = /** @class */ (function () {
|
|
|
856
835
|
* @param options The options to be used when embedding the font.
|
|
857
836
|
* @returns Resolves with the embedded font.
|
|
858
837
|
*/
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
case 4:
|
|
883
|
-
_b = _c.sent();
|
|
884
|
-
_c.label = 5;
|
|
885
|
-
case 5:
|
|
886
|
-
embedder = _b;
|
|
887
|
-
return [3 /*break*/, 7];
|
|
888
|
-
case 6: throw new TypeError('`font` must be one of `StandardFonts | string | Uint8Array | ArrayBuffer`');
|
|
889
|
-
case 7:
|
|
890
|
-
ref = this.context.nextRef();
|
|
891
|
-
pdfFont = PDFFont.of(ref, this, embedder);
|
|
892
|
-
this.fonts.push(pdfFont);
|
|
893
|
-
return [2 /*return*/, pdfFont];
|
|
894
|
-
}
|
|
895
|
-
});
|
|
838
|
+
embedFont(font, options = {}) {
|
|
839
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
840
|
+
const { subset = false, customName, features } = options;
|
|
841
|
+
assertIs(font, 'font', ['string', Uint8Array, ArrayBuffer]);
|
|
842
|
+
assertIs(subset, 'subset', ['boolean']);
|
|
843
|
+
let embedder;
|
|
844
|
+
if (isStandardFont(font)) {
|
|
845
|
+
embedder = StandardFontEmbedder.for(font, customName);
|
|
846
|
+
}
|
|
847
|
+
else if (canBeConvertedToUint8Array(font)) {
|
|
848
|
+
const bytes = toUint8Array(font);
|
|
849
|
+
const fontkit = this.assertFontkit();
|
|
850
|
+
embedder = subset
|
|
851
|
+
? yield CustomFontSubsetEmbedder.for(fontkit, bytes, customName, features)
|
|
852
|
+
: yield CustomFontEmbedder.for(fontkit, bytes, customName, features);
|
|
853
|
+
}
|
|
854
|
+
else {
|
|
855
|
+
throw new TypeError('`font` must be one of `StandardFonts | string | Uint8Array | ArrayBuffer`');
|
|
856
|
+
}
|
|
857
|
+
const ref = this.context.nextRef();
|
|
858
|
+
const pdfFont = PDFFont.of(ref, this, embedder);
|
|
859
|
+
this.fonts.push(pdfFont);
|
|
860
|
+
return pdfFont;
|
|
896
861
|
});
|
|
897
|
-
}
|
|
862
|
+
}
|
|
898
863
|
/**
|
|
899
864
|
* Embed a standard font into this document.
|
|
900
865
|
* For example:
|
|
@@ -906,17 +871,17 @@ var PDFDocument = /** @class */ (function () {
|
|
|
906
871
|
* @param customName The name to be used when embedding the font.
|
|
907
872
|
* @returns The embedded font.
|
|
908
873
|
*/
|
|
909
|
-
|
|
874
|
+
embedStandardFont(font, customName) {
|
|
910
875
|
assertIs(font, 'font', ['string']);
|
|
911
876
|
if (!isStandardFont(font)) {
|
|
912
877
|
throw new TypeError('`font` must be one of type `StandardFonts`');
|
|
913
878
|
}
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
879
|
+
const embedder = StandardFontEmbedder.for(font, customName);
|
|
880
|
+
const ref = this.context.nextRef();
|
|
881
|
+
const pdfFont = PDFFont.of(ref, this, embedder);
|
|
917
882
|
this.fonts.push(pdfFont);
|
|
918
883
|
return pdfFont;
|
|
919
|
-
}
|
|
884
|
+
}
|
|
920
885
|
/**
|
|
921
886
|
* Embed a JPEG image into this document. The input data can be provided in
|
|
922
887
|
* multiple formats:
|
|
@@ -947,25 +912,17 @@ var PDFDocument = /** @class */ (function () {
|
|
|
947
912
|
* @param jpg The input data for a JPEG image.
|
|
948
913
|
* @returns Resolves with the embedded image.
|
|
949
914
|
*/
|
|
950
|
-
|
|
951
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
case 1:
|
|
960
|
-
embedder = _a.sent();
|
|
961
|
-
ref = this.context.nextRef();
|
|
962
|
-
pdfImage = PDFImage.of(ref, this, embedder);
|
|
963
|
-
this.images.push(pdfImage);
|
|
964
|
-
return [2 /*return*/, pdfImage];
|
|
965
|
-
}
|
|
966
|
-
});
|
|
915
|
+
embedJpg(jpg) {
|
|
916
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
917
|
+
assertIs(jpg, 'jpg', ['string', Uint8Array, ArrayBuffer]);
|
|
918
|
+
const bytes = toUint8Array(jpg);
|
|
919
|
+
const embedder = yield JpegEmbedder.for(bytes);
|
|
920
|
+
const ref = this.context.nextRef();
|
|
921
|
+
const pdfImage = PDFImage.of(ref, this, embedder);
|
|
922
|
+
this.images.push(pdfImage);
|
|
923
|
+
return pdfImage;
|
|
967
924
|
});
|
|
968
|
-
}
|
|
925
|
+
}
|
|
969
926
|
/**
|
|
970
927
|
* Embed a PNG image into this document. The input data can be provided in
|
|
971
928
|
* multiple formats:
|
|
@@ -996,25 +953,17 @@ var PDFDocument = /** @class */ (function () {
|
|
|
996
953
|
* @param png The input data for a PNG image.
|
|
997
954
|
* @returns Resolves with the embedded image.
|
|
998
955
|
*/
|
|
999
|
-
|
|
1000
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
case 1:
|
|
1009
|
-
embedder = _a.sent();
|
|
1010
|
-
ref = this.context.nextRef();
|
|
1011
|
-
pdfImage = PDFImage.of(ref, this, embedder);
|
|
1012
|
-
this.images.push(pdfImage);
|
|
1013
|
-
return [2 /*return*/, pdfImage];
|
|
1014
|
-
}
|
|
1015
|
-
});
|
|
956
|
+
embedPng(png) {
|
|
957
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
958
|
+
assertIs(png, 'png', ['string', Uint8Array, ArrayBuffer]);
|
|
959
|
+
const bytes = toUint8Array(png);
|
|
960
|
+
const embedder = yield PngEmbedder.for(bytes);
|
|
961
|
+
const ref = this.context.nextRef();
|
|
962
|
+
const pdfImage = PDFImage.of(ref, this, embedder);
|
|
963
|
+
this.images.push(pdfImage);
|
|
964
|
+
return pdfImage;
|
|
1016
965
|
});
|
|
1017
|
-
}
|
|
966
|
+
}
|
|
1018
967
|
/**
|
|
1019
968
|
* Embed one or more PDF pages into this document.
|
|
1020
969
|
*
|
|
@@ -1035,35 +984,20 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1035
984
|
* @param indices The indices of the pages that should be embedded.
|
|
1036
985
|
* @returns Resolves with an array of the embedded pages.
|
|
1037
986
|
*/
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
]);
|
|
1051
|
-
assertIs(indices, 'indices', [Array]);
|
|
1052
|
-
if (!(pdf instanceof PDFDocument)) return [3 /*break*/, 1];
|
|
1053
|
-
_a = pdf;
|
|
1054
|
-
return [3 /*break*/, 3];
|
|
1055
|
-
case 1: return [4 /*yield*/, PDFDocument.load(pdf)];
|
|
1056
|
-
case 2:
|
|
1057
|
-
_a = _b.sent();
|
|
1058
|
-
_b.label = 3;
|
|
1059
|
-
case 3:
|
|
1060
|
-
srcDoc = _a;
|
|
1061
|
-
srcPages = pluckIndices(srcDoc.getPages(), indices);
|
|
1062
|
-
return [2 /*return*/, this.embedPages(srcPages)];
|
|
1063
|
-
}
|
|
1064
|
-
});
|
|
987
|
+
embedPdf(pdf, indices = [0]) {
|
|
988
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
989
|
+
assertIs(pdf, 'pdf', [
|
|
990
|
+
'string',
|
|
991
|
+
Uint8Array,
|
|
992
|
+
ArrayBuffer,
|
|
993
|
+
[PDFDocument, 'PDFDocument'],
|
|
994
|
+
]);
|
|
995
|
+
assertIs(indices, 'indices', [Array]);
|
|
996
|
+
const srcDoc = pdf instanceof PDFDocument ? pdf : yield PDFDocument.load(pdf);
|
|
997
|
+
const srcPages = pluckIndices(srcDoc.getPages(), indices);
|
|
998
|
+
return this.embedPages(srcPages);
|
|
1065
999
|
});
|
|
1066
|
-
}
|
|
1000
|
+
}
|
|
1067
1001
|
/**
|
|
1068
1002
|
* Embed a single PDF page into this document.
|
|
1069
1003
|
*
|
|
@@ -1096,21 +1030,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1096
1030
|
* page anywhere it is drawn.
|
|
1097
1031
|
* @returns Resolves with the embedded pdf page.
|
|
1098
1032
|
*/
|
|
1099
|
-
|
|
1100
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
case 0:
|
|
1105
|
-
assertIs(page, 'page', [[PDFPage, 'PDFPage']]);
|
|
1106
|
-
return [4 /*yield*/, this.embedPages([page], [boundingBox], [transformationMatrix])];
|
|
1107
|
-
case 1:
|
|
1108
|
-
embeddedPage = (_a.sent())[0];
|
|
1109
|
-
return [2 /*return*/, embeddedPage];
|
|
1110
|
-
}
|
|
1111
|
-
});
|
|
1033
|
+
embedPage(page, boundingBox, transformationMatrix) {
|
|
1034
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1035
|
+
assertIs(page, 'page', [[PDFPage, 'PDFPage']]);
|
|
1036
|
+
const [embeddedPage] = yield this.embedPages([page], [boundingBox], [transformationMatrix]);
|
|
1037
|
+
return embeddedPage;
|
|
1112
1038
|
});
|
|
1113
|
-
}
|
|
1039
|
+
}
|
|
1114
1040
|
/**
|
|
1115
1041
|
* Embed one or more PDF pages into this document.
|
|
1116
1042
|
*
|
|
@@ -1139,53 +1065,35 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1139
1065
|
* (each page's transformation will apply anywhere it is drawn).
|
|
1140
1066
|
* @returns Resolves with an array of the embedded pdf pages.
|
|
1141
1067
|
*/
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
return [2 /*return*/, []];
|
|
1153
|
-
// Assert all pages have the same context
|
|
1154
|
-
for (idx = 0, len = pages.length - 1; idx < len; idx++) {
|
|
1155
|
-
currPage = pages[idx];
|
|
1156
|
-
nextPage = pages[idx + 1];
|
|
1157
|
-
if (currPage.node.context !== nextPage.node.context) {
|
|
1158
|
-
throw new PageEmbeddingMismatchedContextError();
|
|
1159
|
-
}
|
|
1160
|
-
}
|
|
1161
|
-
context = pages[0].node.context;
|
|
1162
|
-
maybeCopyPage = context === this.context
|
|
1163
|
-
? function (p) { return p; }
|
|
1164
|
-
: PDFObjectCopier.for(context, this.context).copy;
|
|
1165
|
-
embeddedPages = new Array(pages.length);
|
|
1166
|
-
idx = 0, len = pages.length;
|
|
1167
|
-
_b.label = 1;
|
|
1168
|
-
case 1:
|
|
1169
|
-
if (!(idx < len)) return [3 /*break*/, 4];
|
|
1170
|
-
page = maybeCopyPage(pages[idx].node);
|
|
1171
|
-
box = boundingBoxes[idx];
|
|
1172
|
-
matrix = transformationMatrices[idx];
|
|
1173
|
-
return [4 /*yield*/, PDFPageEmbedder.for(page, box, matrix)];
|
|
1174
|
-
case 2:
|
|
1175
|
-
embedder = _b.sent();
|
|
1176
|
-
ref = this.context.nextRef();
|
|
1177
|
-
embeddedPages[idx] = PDFEmbeddedPage.of(ref, this, embedder);
|
|
1178
|
-
_b.label = 3;
|
|
1179
|
-
case 3:
|
|
1180
|
-
idx++;
|
|
1181
|
-
return [3 /*break*/, 1];
|
|
1182
|
-
case 4:
|
|
1183
|
-
(_a = this.embeddedPages).push.apply(_a, embeddedPages);
|
|
1184
|
-
return [2 /*return*/, embeddedPages];
|
|
1068
|
+
embedPages(pages, boundingBoxes = [], transformationMatrices = []) {
|
|
1069
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1070
|
+
if (pages.length === 0)
|
|
1071
|
+
return [];
|
|
1072
|
+
// Assert all pages have the same context
|
|
1073
|
+
for (let idx = 0, len = pages.length - 1; idx < len; idx++) {
|
|
1074
|
+
const currPage = pages[idx];
|
|
1075
|
+
const nextPage = pages[idx + 1];
|
|
1076
|
+
if (currPage.node.context !== nextPage.node.context) {
|
|
1077
|
+
throw new PageEmbeddingMismatchedContextError();
|
|
1185
1078
|
}
|
|
1186
|
-
}
|
|
1079
|
+
}
|
|
1080
|
+
const context = pages[0].node.context;
|
|
1081
|
+
const maybeCopyPage = context === this.context
|
|
1082
|
+
? (p) => p
|
|
1083
|
+
: PDFObjectCopier.for(context, this.context).copy;
|
|
1084
|
+
const embeddedPages = new Array(pages.length);
|
|
1085
|
+
for (let idx = 0, len = pages.length; idx < len; idx++) {
|
|
1086
|
+
const page = maybeCopyPage(pages[idx].node);
|
|
1087
|
+
const box = boundingBoxes[idx];
|
|
1088
|
+
const matrix = transformationMatrices[idx];
|
|
1089
|
+
const embedder = yield PDFPageEmbedder.for(page, box, matrix);
|
|
1090
|
+
const ref = this.context.nextRef();
|
|
1091
|
+
embeddedPages[idx] = PDFEmbeddedPage.of(ref, this, embedder);
|
|
1092
|
+
}
|
|
1093
|
+
this.embeddedPages.push(...embeddedPages);
|
|
1094
|
+
return embeddedPages;
|
|
1187
1095
|
});
|
|
1188
|
-
}
|
|
1096
|
+
}
|
|
1189
1097
|
/**
|
|
1190
1098
|
* > **NOTE:** You shouldn't need to call this method directly. The [[save]]
|
|
1191
1099
|
* > and [[saveAsBase64]] methods will automatically ensure that all embedded
|
|
@@ -1196,30 +1104,15 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1196
1104
|
*
|
|
1197
1105
|
* @returns Resolves when the flush is complete.
|
|
1198
1106
|
*/
|
|
1199
|
-
|
|
1200
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
return [4 /*yield*/, this.embedAll(this.images)];
|
|
1207
|
-
case 2:
|
|
1208
|
-
_a.sent();
|
|
1209
|
-
return [4 /*yield*/, this.embedAll(this.embeddedPages)];
|
|
1210
|
-
case 3:
|
|
1211
|
-
_a.sent();
|
|
1212
|
-
return [4 /*yield*/, this.embedAll(this.embeddedFiles)];
|
|
1213
|
-
case 4:
|
|
1214
|
-
_a.sent();
|
|
1215
|
-
return [4 /*yield*/, this.embedAll(this.javaScripts)];
|
|
1216
|
-
case 5:
|
|
1217
|
-
_a.sent();
|
|
1218
|
-
return [2 /*return*/];
|
|
1219
|
-
}
|
|
1220
|
-
});
|
|
1107
|
+
flush() {
|
|
1108
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1109
|
+
yield this.embedAll(this.fonts);
|
|
1110
|
+
yield this.embedAll(this.images);
|
|
1111
|
+
yield this.embedAll(this.embeddedPages);
|
|
1112
|
+
yield this.embedAll(this.embeddedFiles);
|
|
1113
|
+
yield this.embedAll(this.javaScripts);
|
|
1221
1114
|
});
|
|
1222
|
-
}
|
|
1115
|
+
}
|
|
1223
1116
|
/**
|
|
1224
1117
|
* Serialize this document to an array of bytes making up a PDF file.
|
|
1225
1118
|
* For example:
|
|
@@ -1236,34 +1129,25 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1236
1129
|
* @param options The options to be used when saving the document.
|
|
1237
1130
|
* @returns Resolves with the bytes of the serialized document.
|
|
1238
1131
|
*/
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
form.updateFieldAppearances();
|
|
1257
|
-
}
|
|
1258
|
-
return [4 /*yield*/, this.flush()];
|
|
1259
|
-
case 1:
|
|
1260
|
-
_e.sent();
|
|
1261
|
-
Writer = useObjectStreams ? PDFStreamWriter : PDFWriter;
|
|
1262
|
-
return [2 /*return*/, Writer.forContext(this.context, objectsPerTick).serializeToBuffer()];
|
|
1263
|
-
}
|
|
1264
|
-
});
|
|
1132
|
+
save(options = {}) {
|
|
1133
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1134
|
+
const { useObjectStreams = true, addDefaultPage = true, objectsPerTick = 50, updateFieldAppearances = true, } = options;
|
|
1135
|
+
assertIs(useObjectStreams, 'useObjectStreams', ['boolean']);
|
|
1136
|
+
assertIs(addDefaultPage, 'addDefaultPage', ['boolean']);
|
|
1137
|
+
assertIs(objectsPerTick, 'objectsPerTick', ['number']);
|
|
1138
|
+
assertIs(updateFieldAppearances, 'updateFieldAppearances', ['boolean']);
|
|
1139
|
+
if (addDefaultPage && this.getPageCount() === 0)
|
|
1140
|
+
this.addPage();
|
|
1141
|
+
if (updateFieldAppearances) {
|
|
1142
|
+
const form = this.formCache.getValue();
|
|
1143
|
+
if (form)
|
|
1144
|
+
form.updateFieldAppearances();
|
|
1145
|
+
}
|
|
1146
|
+
yield this.flush();
|
|
1147
|
+
const Writer = useObjectStreams ? PDFStreamWriter : PDFWriter;
|
|
1148
|
+
return Writer.forContext(this.context, objectsPerTick).serializeToBuffer();
|
|
1265
1149
|
});
|
|
1266
|
-
}
|
|
1150
|
+
}
|
|
1267
1151
|
/**
|
|
1268
1152
|
* Serialize this document to a base64 encoded string or data URI making up a
|
|
1269
1153
|
* PDF file. For example:
|
|
@@ -1279,84 +1163,58 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1279
1163
|
* @returns Resolves with a base64 encoded string or data URI of the
|
|
1280
1164
|
* serialized document.
|
|
1281
1165
|
*/
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
_a = options.dataUri, dataUri = _a === void 0 ? false : _a, otherOptions = __rest(options, ["dataUri"]);
|
|
1290
|
-
assertIs(dataUri, 'dataUri', ['boolean']);
|
|
1291
|
-
return [4 /*yield*/, this.save(otherOptions)];
|
|
1292
|
-
case 1:
|
|
1293
|
-
bytes = _b.sent();
|
|
1294
|
-
base64 = encodeToBase64(bytes);
|
|
1295
|
-
return [2 /*return*/, dataUri ? "data:application/pdf;base64," + base64 : base64];
|
|
1296
|
-
}
|
|
1297
|
-
});
|
|
1166
|
+
saveAsBase64(options = {}) {
|
|
1167
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1168
|
+
const { dataUri = false } = options, otherOptions = __rest(options, ["dataUri"]);
|
|
1169
|
+
assertIs(dataUri, 'dataUri', ['boolean']);
|
|
1170
|
+
const bytes = yield this.save(otherOptions);
|
|
1171
|
+
const base64 = encodeToBase64(bytes);
|
|
1172
|
+
return dataUri ? `data:application/pdf;base64,${base64}` : base64;
|
|
1298
1173
|
});
|
|
1299
|
-
}
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
for (
|
|
1303
|
-
|
|
1304
|
-
|
|
1174
|
+
}
|
|
1175
|
+
findPageForAnnotationRef(ref) {
|
|
1176
|
+
const pages = this.getPages();
|
|
1177
|
+
for (let idx = 0, len = pages.length; idx < len; idx++) {
|
|
1178
|
+
const page = pages[idx];
|
|
1179
|
+
const annotations = page.node.Annots();
|
|
1305
1180
|
if ((annotations === null || annotations === void 0 ? void 0 : annotations.indexOf(ref)) !== undefined) {
|
|
1306
1181
|
return page;
|
|
1307
1182
|
}
|
|
1308
1183
|
}
|
|
1309
1184
|
return undefined;
|
|
1310
|
-
}
|
|
1311
|
-
|
|
1312
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
case 0:
|
|
1317
|
-
idx = 0, len = embeddables.length;
|
|
1318
|
-
_a.label = 1;
|
|
1319
|
-
case 1:
|
|
1320
|
-
if (!(idx < len)) return [3 /*break*/, 4];
|
|
1321
|
-
return [4 /*yield*/, embeddables[idx].embed()];
|
|
1322
|
-
case 2:
|
|
1323
|
-
_a.sent();
|
|
1324
|
-
_a.label = 3;
|
|
1325
|
-
case 3:
|
|
1326
|
-
idx++;
|
|
1327
|
-
return [3 /*break*/, 1];
|
|
1328
|
-
case 4: return [2 /*return*/];
|
|
1329
|
-
}
|
|
1330
|
-
});
|
|
1185
|
+
}
|
|
1186
|
+
embedAll(embeddables) {
|
|
1187
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1188
|
+
for (let idx = 0, len = embeddables.length; idx < len; idx++) {
|
|
1189
|
+
yield embeddables[idx].embed();
|
|
1190
|
+
}
|
|
1331
1191
|
});
|
|
1332
|
-
}
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1192
|
+
}
|
|
1193
|
+
updateInfoDict() {
|
|
1194
|
+
const pdfLib = `pdf-lib (https://github.com/Hopding/pdf-lib)`;
|
|
1195
|
+
const now = new Date();
|
|
1196
|
+
const info = this.getInfoDict();
|
|
1337
1197
|
this.setProducer(pdfLib);
|
|
1338
1198
|
this.setModificationDate(now);
|
|
1339
1199
|
if (!info.get(PDFName.of('Creator')))
|
|
1340
1200
|
this.setCreator(pdfLib);
|
|
1341
1201
|
if (!info.get(PDFName.of('CreationDate')))
|
|
1342
1202
|
this.setCreationDate(now);
|
|
1343
|
-
}
|
|
1344
|
-
|
|
1345
|
-
|
|
1203
|
+
}
|
|
1204
|
+
getInfoDict() {
|
|
1205
|
+
const existingInfo = this.context.lookup(this.context.trailerInfo.Info);
|
|
1346
1206
|
if (existingInfo instanceof PDFDict)
|
|
1347
1207
|
return existingInfo;
|
|
1348
|
-
|
|
1208
|
+
const newInfo = this.context.obj({});
|
|
1349
1209
|
this.context.trailerInfo.Info = this.context.register(newInfo);
|
|
1350
1210
|
return newInfo;
|
|
1351
|
-
}
|
|
1352
|
-
|
|
1211
|
+
}
|
|
1212
|
+
assertFontkit() {
|
|
1353
1213
|
if (!this.fontkit)
|
|
1354
1214
|
throw new FontkitNotRegisteredError();
|
|
1355
1215
|
return this.fontkit;
|
|
1356
|
-
}
|
|
1357
|
-
|
|
1358
|
-
}());
|
|
1359
|
-
export default PDFDocument;
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1360
1218
|
/* tslint:disable-next-line only-arrow-functions */
|
|
1361
1219
|
function assertIsLiteralOrHexString(pdfObject) {
|
|
1362
1220
|
if (!(pdfObject instanceof PDFHexString) &&
|