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