@pdfme/pdf-lib 1.17.3 → 1.18.3
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 +368 -539
- 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 +48 -63
- 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 +34 -47
- 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 +46 -58
- 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 +49 -63
- 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 +37 -52
- 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 +447 -426
- package/cjs/api/PDFPage.js.map +1 -1
- package/cjs/api/PDFPageOptions.d.ts +29 -12
- package/cjs/api/PDFPageOptions.d.ts.map +1 -1
- package/cjs/api/PDFPageOptions.js.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 +297 -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 +20 -4
- package/cjs/api/operations.d.ts.map +1 -1
- package/cjs/api/operations.js +383 -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 +71 -0
- package/cjs/api/svg.d.ts.map +1 -0
- package/cjs/api/svg.js +654 -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 +93 -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 +126 -183
- 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 +39 -52
- 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 +39 -48
- 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 +20 -27
- 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 +62 -74
- 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 +53 -63
- 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 +29 -42
- 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 +41 -61
- 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 +157 -219
- 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 +74 -107
- 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 +87 -127
- 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 +11480 -7021
- package/dist/pdf-lib.esm.js.map +1 -1
- package/dist/pdf-lib.esm.min.js +1 -15
- package/dist/pdf-lib.esm.min.js.map +1 -1
- package/dist/pdf-lib.js +11481 -7019
- package/dist/pdf-lib.js.map +1 -1
- package/dist/pdf-lib.min.js +1 -15
- 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 +346 -519
- 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 +48 -64
- 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 +29 -44
- 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 +36 -50
- 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 +42 -58
- 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 +37 -53
- 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 +279 -260
- package/es/api/PDFPage.js.map +1 -1
- package/es/api/PDFPageOptions.d.ts +29 -12
- package/es/api/PDFPageOptions.d.ts.map +1 -1
- package/es/api/PDFPageOptions.js.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 +285 -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 +20 -4
- package/es/api/operations.d.ts.map +1 -1
- package/es/api/operations.js +229 -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 +71 -0
- package/es/api/svg.d.ts.map +1 -0
- package/es/api/svg.js +650 -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 +90 -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 +124 -182
- 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 +37 -51
- 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 +38 -48
- 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 +19 -27
- 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 +62 -74
- 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 +51 -62
- 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 +29 -42
- 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 +40 -61
- 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 +156 -219
- 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 +73 -107
- 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 +86 -127
- 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 +66 -19
- package/src/api/PDFPageOptions.ts +28 -12
- 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 +55 -12
- package/src/api/operators.ts +10 -3
- package/src/api/rotations.ts +1 -1
- package/src/api/svg.ts +937 -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 +38 -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 +29 -12
- 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 +20 -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 +71 -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 +29 -12
- 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 +20 -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 +71 -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,39 @@ 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
|
-
|
|
133
|
-
|
|
134
|
-
};
|
|
118
|
+
static async load(pdf, options = {}) {
|
|
119
|
+
const { ignoreEncryption = false, parseSpeed = PDFDocumentOptions_1.ParseSpeeds.Slow, throwOnInvalidObject = false, updateMetadata = true, capNumbers = false, password, } = options;
|
|
120
|
+
(0, utils_1.assertIs)(pdf, 'pdf', ['string', Uint8Array, ArrayBuffer]);
|
|
121
|
+
(0, utils_1.assertIs)(ignoreEncryption, 'ignoreEncryption', ['boolean']);
|
|
122
|
+
(0, utils_1.assertIs)(parseSpeed, 'parseSpeed', ['number']);
|
|
123
|
+
(0, utils_1.assertIs)(throwOnInvalidObject, 'throwOnInvalidObject', ['boolean']);
|
|
124
|
+
(0, utils_1.assertIs)(password, 'password', ['string', 'undefined']);
|
|
125
|
+
const bytes = (0, utils_1.toUint8Array)(pdf);
|
|
126
|
+
const context = await core_1.PDFParser.forBytesWithOptions(bytes, parseSpeed, throwOnInvalidObject, capNumbers).parseDocument();
|
|
127
|
+
if (!!context.lookup(context.trailerInfo.Encrypt) && password !== undefined) {
|
|
128
|
+
// Decrypt
|
|
129
|
+
const fileIds = context.lookup(context.trailerInfo.ID, core_1.PDFArray);
|
|
130
|
+
const encryptDict = context.lookup(context.trailerInfo.Encrypt, core_1.PDFDict);
|
|
131
|
+
const decryptedContext = await core_1.PDFParser.forBytesWithOptions(bytes, parseSpeed, throwOnInvalidObject, capNumbers, new crypto_1.CipherTransformFactory(encryptDict, fileIds.get(0).asBytes(), password)).parseDocument();
|
|
132
|
+
return new PDFDocument(decryptedContext, true, updateMetadata);
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
return new PDFDocument(context, ignoreEncryption, updateMetadata);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
135
138
|
/**
|
|
136
139
|
* Create a new [[PDFDocument]].
|
|
137
140
|
* @returns Resolves with the newly created document.
|
|
138
141
|
*/
|
|
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
|
-
});
|
|
152
|
-
});
|
|
153
|
-
};
|
|
142
|
+
static async create(options = {}) {
|
|
143
|
+
const { updateMetadata = true } = options;
|
|
144
|
+
const context = core_1.PDFContext.create();
|
|
145
|
+
const pageTree = core_1.PDFPageTree.withContext(context);
|
|
146
|
+
const pageTreeRef = context.register(pageTree);
|
|
147
|
+
const catalog = core_1.PDFCatalog.withContextAndPages(context, pageTreeRef);
|
|
148
|
+
context.trailerInfo.Root = context.register(catalog);
|
|
149
|
+
return new PDFDocument(context, false, updateMetadata);
|
|
150
|
+
}
|
|
154
151
|
/**
|
|
155
152
|
* Register a fontkit instance. This must be done before custom fonts can
|
|
156
153
|
* be embedded. See [here](https://github.com/Hopding/pdf-lib/tree/master#fontkit-installation)
|
|
@@ -169,9 +166,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
169
166
|
*
|
|
170
167
|
* @param fontkit The fontkit instance to be registered.
|
|
171
168
|
*/
|
|
172
|
-
|
|
169
|
+
registerFontkit(fontkit) {
|
|
173
170
|
this.fontkit = fontkit;
|
|
174
|
-
}
|
|
171
|
+
}
|
|
175
172
|
/**
|
|
176
173
|
* Get the [[PDFForm]] containing all interactive fields for this document.
|
|
177
174
|
* For example:
|
|
@@ -186,14 +183,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
186
183
|
* ```
|
|
187
184
|
* @returns The form for this document.
|
|
188
185
|
*/
|
|
189
|
-
|
|
190
|
-
|
|
186
|
+
getForm() {
|
|
187
|
+
const form = this.formCache.access();
|
|
191
188
|
if (form.hasXFA()) {
|
|
192
189
|
console.warn('Removing XFA form data as pdf-lib does not support reading or writing XFA');
|
|
193
190
|
form.deleteXFA();
|
|
194
191
|
}
|
|
195
192
|
return form;
|
|
196
|
-
}
|
|
193
|
+
}
|
|
197
194
|
/**
|
|
198
195
|
* Get this document's title metadata. The title appears in the
|
|
199
196
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -202,13 +199,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
202
199
|
* ```
|
|
203
200
|
* @returns A string containing the title of this document, if it has one.
|
|
204
201
|
*/
|
|
205
|
-
|
|
206
|
-
|
|
202
|
+
getTitle() {
|
|
203
|
+
const title = this.getInfoDict().lookup(core_1.PDFName.Title);
|
|
207
204
|
if (!title)
|
|
208
205
|
return undefined;
|
|
209
206
|
assertIsLiteralOrHexString(title);
|
|
210
207
|
return title.decodeText();
|
|
211
|
-
}
|
|
208
|
+
}
|
|
212
209
|
/**
|
|
213
210
|
* Get this document's author metadata. The author appears in the
|
|
214
211
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -217,13 +214,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
217
214
|
* ```
|
|
218
215
|
* @returns A string containing the author of this document, if it has one.
|
|
219
216
|
*/
|
|
220
|
-
|
|
221
|
-
|
|
217
|
+
getAuthor() {
|
|
218
|
+
const author = this.getInfoDict().lookup(core_1.PDFName.Author);
|
|
222
219
|
if (!author)
|
|
223
220
|
return undefined;
|
|
224
221
|
assertIsLiteralOrHexString(author);
|
|
225
222
|
return author.decodeText();
|
|
226
|
-
}
|
|
223
|
+
}
|
|
227
224
|
/**
|
|
228
225
|
* Get this document's subject metadata. The subject appears in the
|
|
229
226
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -232,13 +229,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
232
229
|
* ```
|
|
233
230
|
* @returns A string containing the subject of this document, if it has one.
|
|
234
231
|
*/
|
|
235
|
-
|
|
236
|
-
|
|
232
|
+
getSubject() {
|
|
233
|
+
const subject = this.getInfoDict().lookup(core_1.PDFName.Subject);
|
|
237
234
|
if (!subject)
|
|
238
235
|
return undefined;
|
|
239
236
|
assertIsLiteralOrHexString(subject);
|
|
240
237
|
return subject.decodeText();
|
|
241
|
-
}
|
|
238
|
+
}
|
|
242
239
|
/**
|
|
243
240
|
* Get this document's keywords metadata. The keywords appear in the
|
|
244
241
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -247,13 +244,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
247
244
|
* ```
|
|
248
245
|
* @returns A string containing the keywords of this document, if it has any.
|
|
249
246
|
*/
|
|
250
|
-
|
|
251
|
-
|
|
247
|
+
getKeywords() {
|
|
248
|
+
const keywords = this.getInfoDict().lookup(core_1.PDFName.Keywords);
|
|
252
249
|
if (!keywords)
|
|
253
250
|
return undefined;
|
|
254
251
|
assertIsLiteralOrHexString(keywords);
|
|
255
252
|
return keywords.decodeText();
|
|
256
|
-
}
|
|
253
|
+
}
|
|
257
254
|
/**
|
|
258
255
|
* Get this document's creator metadata. The creator appears in the
|
|
259
256
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -262,13 +259,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
262
259
|
* ```
|
|
263
260
|
* @returns A string containing the creator of this document, if it has one.
|
|
264
261
|
*/
|
|
265
|
-
|
|
266
|
-
|
|
262
|
+
getCreator() {
|
|
263
|
+
const creator = this.getInfoDict().lookup(core_1.PDFName.Creator);
|
|
267
264
|
if (!creator)
|
|
268
265
|
return undefined;
|
|
269
266
|
assertIsLiteralOrHexString(creator);
|
|
270
267
|
return creator.decodeText();
|
|
271
|
-
}
|
|
268
|
+
}
|
|
272
269
|
/**
|
|
273
270
|
* Get this document's producer metadata. The producer appears in the
|
|
274
271
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -277,13 +274,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
277
274
|
* ```
|
|
278
275
|
* @returns A string containing the producer of this document, if it has one.
|
|
279
276
|
*/
|
|
280
|
-
|
|
281
|
-
|
|
277
|
+
getProducer() {
|
|
278
|
+
const producer = this.getInfoDict().lookup(core_1.PDFName.Producer);
|
|
282
279
|
if (!producer)
|
|
283
280
|
return undefined;
|
|
284
281
|
assertIsLiteralOrHexString(producer);
|
|
285
282
|
return producer.decodeText();
|
|
286
|
-
}
|
|
283
|
+
}
|
|
287
284
|
/**
|
|
288
285
|
* Get this document's creation date metadata. The creation date appears in
|
|
289
286
|
* the "Document Properties" section of most PDF readers. For example:
|
|
@@ -293,13 +290,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
293
290
|
* @returns A Date containing the creation date of this document,
|
|
294
291
|
* if it has one.
|
|
295
292
|
*/
|
|
296
|
-
|
|
297
|
-
|
|
293
|
+
getCreationDate() {
|
|
294
|
+
const creationDate = this.getInfoDict().lookup(core_1.PDFName.CreationDate);
|
|
298
295
|
if (!creationDate)
|
|
299
296
|
return undefined;
|
|
300
297
|
assertIsLiteralOrHexString(creationDate);
|
|
301
298
|
return creationDate.decodeDate();
|
|
302
|
-
}
|
|
299
|
+
}
|
|
303
300
|
/**
|
|
304
301
|
* Get this document's modification date metadata. The modification date
|
|
305
302
|
* appears in the "Document Properties" section of most PDF readers.
|
|
@@ -310,13 +307,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
310
307
|
* @returns A Date containing the modification date of this document,
|
|
311
308
|
* if it has one.
|
|
312
309
|
*/
|
|
313
|
-
|
|
314
|
-
|
|
310
|
+
getModificationDate() {
|
|
311
|
+
const modificationDate = this.getInfoDict().lookup(core_1.PDFName.ModDate);
|
|
315
312
|
if (!modificationDate)
|
|
316
313
|
return undefined;
|
|
317
314
|
assertIsLiteralOrHexString(modificationDate);
|
|
318
315
|
return modificationDate.decodeDate();
|
|
319
|
-
}
|
|
316
|
+
}
|
|
320
317
|
/**
|
|
321
318
|
* Set this document's title metadata. The title will appear in the
|
|
322
319
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -334,16 +331,16 @@ var PDFDocument = /** @class */ (function () {
|
|
|
334
331
|
* @param title The title of this document.
|
|
335
332
|
* @param options The options to be used when setting the title.
|
|
336
333
|
*/
|
|
337
|
-
|
|
338
|
-
utils_1.assertIs(title, 'title', ['string']);
|
|
339
|
-
|
|
334
|
+
setTitle(title, options) {
|
|
335
|
+
(0, utils_1.assertIs)(title, 'title', ['string']);
|
|
336
|
+
const key = core_1.PDFName.of('Title');
|
|
340
337
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(title));
|
|
341
338
|
// Indicate that readers should display the title rather than the filename
|
|
342
339
|
if (options === null || options === void 0 ? void 0 : options.showInWindowTitleBar) {
|
|
343
|
-
|
|
340
|
+
const prefs = this.catalog.getOrCreateViewerPreferences();
|
|
344
341
|
prefs.setDisplayDocTitle(true);
|
|
345
342
|
}
|
|
346
|
-
}
|
|
343
|
+
}
|
|
347
344
|
/**
|
|
348
345
|
* Set this document's author metadata. The author will appear in the
|
|
349
346
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -352,11 +349,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
352
349
|
* ```
|
|
353
350
|
* @param author The author of this document.
|
|
354
351
|
*/
|
|
355
|
-
|
|
356
|
-
utils_1.assertIs(author, 'author', ['string']);
|
|
357
|
-
|
|
352
|
+
setAuthor(author) {
|
|
353
|
+
(0, utils_1.assertIs)(author, 'author', ['string']);
|
|
354
|
+
const key = core_1.PDFName.of('Author');
|
|
358
355
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(author));
|
|
359
|
-
}
|
|
356
|
+
}
|
|
360
357
|
/**
|
|
361
358
|
* Set this document's subject metadata. The subject will appear in the
|
|
362
359
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -365,11 +362,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
365
362
|
* ```
|
|
366
363
|
* @param subject The subject of this document.
|
|
367
364
|
*/
|
|
368
|
-
|
|
369
|
-
utils_1.assertIs(subject, 'author', ['string']);
|
|
370
|
-
|
|
365
|
+
setSubject(subject) {
|
|
366
|
+
(0, utils_1.assertIs)(subject, 'author', ['string']);
|
|
367
|
+
const key = core_1.PDFName.of('Subject');
|
|
371
368
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(subject));
|
|
372
|
-
}
|
|
369
|
+
}
|
|
373
370
|
/**
|
|
374
371
|
* Set this document's keyword metadata. These keywords will appear in the
|
|
375
372
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -378,11 +375,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
378
375
|
* ```
|
|
379
376
|
* @param keywords An array of keywords associated with this document.
|
|
380
377
|
*/
|
|
381
|
-
|
|
382
|
-
utils_1.assertIs(keywords, 'keywords', [Array]);
|
|
383
|
-
|
|
378
|
+
setKeywords(keywords) {
|
|
379
|
+
(0, utils_1.assertIs)(keywords, 'keywords', [Array]);
|
|
380
|
+
const key = core_1.PDFName.of('Keywords');
|
|
384
381
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(keywords.join(' ')));
|
|
385
|
-
}
|
|
382
|
+
}
|
|
386
383
|
/**
|
|
387
384
|
* Set this document's creator metadata. The creator will appear in the
|
|
388
385
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -391,11 +388,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
391
388
|
* ```
|
|
392
389
|
* @param creator The creator of this document.
|
|
393
390
|
*/
|
|
394
|
-
|
|
395
|
-
utils_1.assertIs(creator, 'creator', ['string']);
|
|
396
|
-
|
|
391
|
+
setCreator(creator) {
|
|
392
|
+
(0, utils_1.assertIs)(creator, 'creator', ['string']);
|
|
393
|
+
const key = core_1.PDFName.of('Creator');
|
|
397
394
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(creator));
|
|
398
|
-
}
|
|
395
|
+
}
|
|
399
396
|
/**
|
|
400
397
|
* Set this document's producer metadata. The producer will appear in the
|
|
401
398
|
* "Document Properties" section of most PDF readers. For example:
|
|
@@ -404,11 +401,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
404
401
|
* ```
|
|
405
402
|
* @param producer The producer of this document.
|
|
406
403
|
*/
|
|
407
|
-
|
|
408
|
-
utils_1.assertIs(producer, 'creator', ['string']);
|
|
409
|
-
|
|
404
|
+
setProducer(producer) {
|
|
405
|
+
(0, utils_1.assertIs)(producer, 'creator', ['string']);
|
|
406
|
+
const key = core_1.PDFName.of('Producer');
|
|
410
407
|
this.getInfoDict().set(key, core_1.PDFHexString.fromText(producer));
|
|
411
|
-
}
|
|
408
|
+
}
|
|
412
409
|
/**
|
|
413
410
|
* Set this document's language metadata. The language will appear in the
|
|
414
411
|
* "Document Properties" section of some PDF readers. For example:
|
|
@@ -419,11 +416,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
419
416
|
* @param language An RFC 3066 _Language-Tag_ denoting the language of this
|
|
420
417
|
* document, or an empty string if the language is unknown.
|
|
421
418
|
*/
|
|
422
|
-
|
|
423
|
-
utils_1.assertIs(language, 'language', ['string']);
|
|
424
|
-
|
|
419
|
+
setLanguage(language) {
|
|
420
|
+
(0, utils_1.assertIs)(language, 'language', ['string']);
|
|
421
|
+
const key = core_1.PDFName.of('Lang');
|
|
425
422
|
this.catalog.set(key, core_1.PDFString.of(language));
|
|
426
|
-
}
|
|
423
|
+
}
|
|
427
424
|
/**
|
|
428
425
|
* Set this document's creation date metadata. The creation date will appear
|
|
429
426
|
* in the "Document Properties" section of most PDF readers. For example:
|
|
@@ -432,11 +429,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
432
429
|
* ```
|
|
433
430
|
* @param creationDate The date this document was created.
|
|
434
431
|
*/
|
|
435
|
-
|
|
436
|
-
utils_1.assertIs(creationDate, 'creationDate', [[Date, 'Date']]);
|
|
437
|
-
|
|
432
|
+
setCreationDate(creationDate) {
|
|
433
|
+
(0, utils_1.assertIs)(creationDate, 'creationDate', [[Date, 'Date']]);
|
|
434
|
+
const key = core_1.PDFName.of('CreationDate');
|
|
438
435
|
this.getInfoDict().set(key, core_1.PDFString.fromDate(creationDate));
|
|
439
|
-
}
|
|
436
|
+
}
|
|
440
437
|
/**
|
|
441
438
|
* Set this document's modification date metadata. The modification date will
|
|
442
439
|
* appear in the "Document Properties" section of most PDF readers. For
|
|
@@ -446,11 +443,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
446
443
|
* ```
|
|
447
444
|
* @param modificationDate The date this document was last modified.
|
|
448
445
|
*/
|
|
449
|
-
|
|
450
|
-
utils_1.assertIs(modificationDate, 'modificationDate', [[Date, 'Date']]);
|
|
451
|
-
|
|
446
|
+
setModificationDate(modificationDate) {
|
|
447
|
+
(0, utils_1.assertIs)(modificationDate, 'modificationDate', [[Date, 'Date']]);
|
|
448
|
+
const key = core_1.PDFName.of('ModDate');
|
|
452
449
|
this.getInfoDict().set(key, core_1.PDFString.fromDate(modificationDate));
|
|
453
|
-
}
|
|
450
|
+
}
|
|
454
451
|
/**
|
|
455
452
|
* Get the number of pages contained in this document. For example:
|
|
456
453
|
* ```js
|
|
@@ -458,11 +455,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
458
455
|
* ```
|
|
459
456
|
* @returns The number of pages in this document.
|
|
460
457
|
*/
|
|
461
|
-
|
|
458
|
+
getPageCount() {
|
|
462
459
|
if (this.pageCount === undefined)
|
|
463
460
|
this.pageCount = this.getPages().length;
|
|
464
461
|
return this.pageCount;
|
|
465
|
-
}
|
|
462
|
+
}
|
|
466
463
|
/**
|
|
467
464
|
* Get an array of all the pages contained in this document. The pages are
|
|
468
465
|
* stored in the array in the same order that they are rendered in the
|
|
@@ -475,9 +472,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
475
472
|
* ```
|
|
476
473
|
* @returns An array of all the pages contained in this document.
|
|
477
474
|
*/
|
|
478
|
-
|
|
475
|
+
getPages() {
|
|
479
476
|
return this.pageCache.access();
|
|
480
|
-
}
|
|
477
|
+
}
|
|
481
478
|
/**
|
|
482
479
|
* Get the page rendered at a particular `index` of the document. For example:
|
|
483
480
|
* ```js
|
|
@@ -487,11 +484,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
487
484
|
* ```
|
|
488
485
|
* @returns The [[PDFPage]] rendered at the given `index` of the document.
|
|
489
486
|
*/
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
utils_1.assertRange(index, 'index', 0, pages.length - 1);
|
|
487
|
+
getPage(index) {
|
|
488
|
+
const pages = this.getPages();
|
|
489
|
+
(0, utils_1.assertRange)(index, 'index', 0, pages.length - 1);
|
|
493
490
|
return pages[index];
|
|
494
|
-
}
|
|
491
|
+
}
|
|
495
492
|
/**
|
|
496
493
|
* Get an array of indices for all the pages contained in this document. The
|
|
497
494
|
* array will contain a range of integers from
|
|
@@ -507,9 +504,9 @@ var PDFDocument = /** @class */ (function () {
|
|
|
507
504
|
* ```
|
|
508
505
|
* @returns An array of indices for all pages contained in this document.
|
|
509
506
|
*/
|
|
510
|
-
|
|
511
|
-
return utils_1.range(0, this.getPageCount());
|
|
512
|
-
}
|
|
507
|
+
getPageIndices() {
|
|
508
|
+
return (0, utils_1.range)(0, this.getPageCount());
|
|
509
|
+
}
|
|
513
510
|
/**
|
|
514
511
|
* Remove the page at a given index from this document. For example:
|
|
515
512
|
* ```js
|
|
@@ -521,14 +518,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
521
518
|
* in the document.
|
|
522
519
|
* @param index The index of the page to be removed.
|
|
523
520
|
*/
|
|
524
|
-
|
|
525
|
-
|
|
521
|
+
removePage(index) {
|
|
522
|
+
const pageCount = this.getPageCount();
|
|
526
523
|
if (this.pageCount === 0)
|
|
527
524
|
throw new errors_1.RemovePageFromEmptyDocumentError();
|
|
528
|
-
utils_1.assertRange(index, 'index', 0, pageCount - 1);
|
|
525
|
+
(0, utils_1.assertRange)(index, 'index', 0, pageCount - 1);
|
|
529
526
|
this.catalog.removeLeafNode(index);
|
|
530
527
|
this.pageCount = pageCount - 1;
|
|
531
|
-
}
|
|
528
|
+
}
|
|
532
529
|
/**
|
|
533
530
|
* Add a page to the end of this document. This method accepts three
|
|
534
531
|
* different value types for the `page` parameter:
|
|
@@ -560,10 +557,10 @@ var PDFDocument = /** @class */ (function () {
|
|
|
560
557
|
* @param page Optionally, the desired dimensions or existing page.
|
|
561
558
|
* @returns The newly created (or existing) page.
|
|
562
559
|
*/
|
|
563
|
-
|
|
564
|
-
utils_1.assertIs(page, 'page', ['undefined', [PDFPage_1.default, 'PDFPage'], Array]);
|
|
560
|
+
addPage(page) {
|
|
561
|
+
(0, utils_1.assertIs)(page, 'page', ['undefined', [PDFPage_1.default, 'PDFPage'], Array]);
|
|
565
562
|
return this.insertPage(this.getPageCount(), page);
|
|
566
|
-
}
|
|
563
|
+
}
|
|
567
564
|
/**
|
|
568
565
|
* Insert a page at a given index within this document. This method accepts
|
|
569
566
|
* three different value types for the `page` parameter:
|
|
@@ -596,25 +593,25 @@ var PDFDocument = /** @class */ (function () {
|
|
|
596
593
|
* @param page Optionally, the desired dimensions or existing page.
|
|
597
594
|
* @returns The newly created (or existing) page.
|
|
598
595
|
*/
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
utils_1.assertRange(index, 'index', 0, pageCount);
|
|
602
|
-
utils_1.assertIs(page, 'page', ['undefined', [PDFPage_1.default, 'PDFPage'], Array]);
|
|
596
|
+
insertPage(index, page) {
|
|
597
|
+
const pageCount = this.getPageCount();
|
|
598
|
+
(0, utils_1.assertRange)(index, 'index', 0, pageCount);
|
|
599
|
+
(0, utils_1.assertIs)(page, 'page', ['undefined', [PDFPage_1.default, 'PDFPage'], Array]);
|
|
603
600
|
if (!page || Array.isArray(page)) {
|
|
604
|
-
|
|
601
|
+
const dims = Array.isArray(page) ? page : sizes_1.PageSizes.A4;
|
|
605
602
|
page = PDFPage_1.default.create(this);
|
|
606
|
-
page.setSize
|
|
603
|
+
page.setSize(...dims);
|
|
607
604
|
}
|
|
608
605
|
else if (page.doc !== this) {
|
|
609
606
|
throw new errors_1.ForeignPageError();
|
|
610
607
|
}
|
|
611
|
-
|
|
608
|
+
const parentRef = this.catalog.insertLeafNode(page.ref, index);
|
|
612
609
|
page.node.setParent(parentRef);
|
|
613
610
|
this.pageMap.set(page.node, page);
|
|
614
611
|
this.pageCache.invalidate();
|
|
615
612
|
this.pageCount = pageCount + 1;
|
|
616
613
|
return page;
|
|
617
|
-
}
|
|
614
|
+
}
|
|
618
615
|
/**
|
|
619
616
|
* Copy pages from a source document into this document. Allows pages to be
|
|
620
617
|
* copied between different [[PDFDocument]] instances. For example:
|
|
@@ -633,31 +630,21 @@ var PDFDocument = /** @class */ (function () {
|
|
|
633
630
|
* @param indices The indices of the pages that should be copied.
|
|
634
631
|
* @returns Resolves with an array of pages copied into this document.
|
|
635
632
|
*/
|
|
636
|
-
|
|
637
|
-
|
|
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
|
-
});
|
|
659
|
-
});
|
|
660
|
-
};
|
|
633
|
+
async copyPages(srcDoc, indices) {
|
|
634
|
+
(0, utils_1.assertIs)(srcDoc, 'srcDoc', [[PDFDocument, 'PDFDocument']]);
|
|
635
|
+
(0, utils_1.assertIs)(indices, 'indices', [Array]);
|
|
636
|
+
await srcDoc.flush();
|
|
637
|
+
const copier = core_1.PDFObjectCopier.for(srcDoc.context, this.context);
|
|
638
|
+
const srcPages = srcDoc.getPages();
|
|
639
|
+
const copiedPages = new Array(indices.length);
|
|
640
|
+
for (let idx = 0, len = indices.length; idx < len; idx++) {
|
|
641
|
+
const srcPage = srcPages[indices[idx]];
|
|
642
|
+
const copiedPage = copier.copy(srcPage.node);
|
|
643
|
+
const ref = this.context.register(copiedPage);
|
|
644
|
+
copiedPages[idx] = PDFPage_1.default.of(copiedPage, ref, this);
|
|
645
|
+
}
|
|
646
|
+
return copiedPages;
|
|
647
|
+
}
|
|
661
648
|
/**
|
|
662
649
|
* Get a copy of this document.
|
|
663
650
|
*
|
|
@@ -672,47 +659,36 @@ var PDFDocument = /** @class */ (function () {
|
|
|
672
659
|
*
|
|
673
660
|
* @returns Resolves with a copy this document.
|
|
674
661
|
*/
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
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
|
-
});
|
|
714
|
-
});
|
|
715
|
-
};
|
|
662
|
+
async copy() {
|
|
663
|
+
const pdfCopy = await PDFDocument.create();
|
|
664
|
+
const contentPages = await pdfCopy.copyPages(this, this.getPageIndices());
|
|
665
|
+
for (let idx = 0, len = contentPages.length; idx < len; idx++) {
|
|
666
|
+
pdfCopy.addPage(contentPages[idx]);
|
|
667
|
+
}
|
|
668
|
+
if (this.getAuthor() !== undefined) {
|
|
669
|
+
pdfCopy.setAuthor(this.getAuthor());
|
|
670
|
+
}
|
|
671
|
+
if (this.getCreationDate() !== undefined) {
|
|
672
|
+
pdfCopy.setCreationDate(this.getCreationDate());
|
|
673
|
+
}
|
|
674
|
+
if (this.getCreator() !== undefined) {
|
|
675
|
+
pdfCopy.setCreator(this.getCreator());
|
|
676
|
+
}
|
|
677
|
+
if (this.getModificationDate() !== undefined) {
|
|
678
|
+
pdfCopy.setModificationDate(this.getModificationDate());
|
|
679
|
+
}
|
|
680
|
+
if (this.getProducer() !== undefined) {
|
|
681
|
+
pdfCopy.setProducer(this.getProducer());
|
|
682
|
+
}
|
|
683
|
+
if (this.getSubject() !== undefined) {
|
|
684
|
+
pdfCopy.setSubject(this.getSubject());
|
|
685
|
+
}
|
|
686
|
+
if (this.getTitle() !== undefined) {
|
|
687
|
+
pdfCopy.setTitle(this.getTitle());
|
|
688
|
+
}
|
|
689
|
+
pdfCopy.defaultWordBreaks = this.defaultWordBreaks;
|
|
690
|
+
return pdfCopy;
|
|
691
|
+
}
|
|
716
692
|
/**
|
|
717
693
|
* Add JavaScript to this document. The supplied `script` is executed when the
|
|
718
694
|
* document is opened. The `script` can be used to perform some operation
|
|
@@ -737,14 +713,14 @@ var PDFDocument = /** @class */ (function () {
|
|
|
737
713
|
* @param name The name of the script. Must be unique per document.
|
|
738
714
|
* @param script The JavaScript to execute.
|
|
739
715
|
*/
|
|
740
|
-
|
|
741
|
-
utils_1.assertIs(name, 'name', ['string']);
|
|
742
|
-
utils_1.assertIs(script, 'script', ['string']);
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
716
|
+
addJavaScript(name, script) {
|
|
717
|
+
(0, utils_1.assertIs)(name, 'name', ['string']);
|
|
718
|
+
(0, utils_1.assertIs)(script, 'script', ['string']);
|
|
719
|
+
const embedder = JavaScriptEmbedder_1.default.for(script, name);
|
|
720
|
+
const ref = this.context.nextRef();
|
|
721
|
+
const javaScript = PDFJavaScript_1.default.of(ref, this, embedder);
|
|
746
722
|
this.javaScripts.push(javaScript);
|
|
747
|
-
}
|
|
723
|
+
}
|
|
748
724
|
/**
|
|
749
725
|
* Add an attachment to this document. Attachments are visible in the
|
|
750
726
|
* "Attachments" panel of Adobe Acrobat and some other PDF readers. Any
|
|
@@ -800,29 +776,22 @@ var PDFDocument = /** @class */ (function () {
|
|
|
800
776
|
* @param name The name of the file to be attached.
|
|
801
777
|
* @returns Resolves when the attachment is complete.
|
|
802
778
|
*/
|
|
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
|
-
});
|
|
824
|
-
});
|
|
825
|
-
};
|
|
779
|
+
async attach(attachment, name, options = {}) {
|
|
780
|
+
(0, utils_1.assertIs)(attachment, 'attachment', ['string', Uint8Array, ArrayBuffer]);
|
|
781
|
+
(0, utils_1.assertIs)(name, 'name', ['string']);
|
|
782
|
+
(0, utils_1.assertOrUndefined)(options.mimeType, 'mimeType', ['string']);
|
|
783
|
+
(0, utils_1.assertOrUndefined)(options.description, 'description', ['string']);
|
|
784
|
+
(0, utils_1.assertOrUndefined)(options.creationDate, 'options.creationDate', [Date]);
|
|
785
|
+
(0, utils_1.assertOrUndefined)(options.modificationDate, 'options.modificationDate', [
|
|
786
|
+
Date,
|
|
787
|
+
]);
|
|
788
|
+
(0, utils_1.assertIsOneOfOrUndefined)(options.afRelationship, 'options.afRelationship', FileEmbedder_1.AFRelationship);
|
|
789
|
+
const bytes = (0, utils_1.toUint8Array)(attachment);
|
|
790
|
+
const embedder = FileEmbedder_1.default.for(bytes, name, options);
|
|
791
|
+
const ref = this.context.nextRef();
|
|
792
|
+
const embeddedFile = PDFEmbeddedFile_1.default.of(ref, this, embedder);
|
|
793
|
+
this.embeddedFiles.push(embeddedFile);
|
|
794
|
+
}
|
|
826
795
|
/**
|
|
827
796
|
* Embed a font into this document. The input data can be provided in multiple
|
|
828
797
|
* formats:
|
|
@@ -858,45 +827,29 @@ var PDFDocument = /** @class */ (function () {
|
|
|
858
827
|
* @param options The options to be used when embedding the font.
|
|
859
828
|
* @returns Resolves with the embedded font.
|
|
860
829
|
*/
|
|
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
|
-
});
|
|
898
|
-
});
|
|
899
|
-
};
|
|
830
|
+
async embedFont(font, options = {}) {
|
|
831
|
+
const { subset = false, customName, features } = options;
|
|
832
|
+
(0, utils_1.assertIs)(font, 'font', ['string', Uint8Array, ArrayBuffer]);
|
|
833
|
+
(0, utils_1.assertIs)(subset, 'subset', ['boolean']);
|
|
834
|
+
let embedder;
|
|
835
|
+
if ((0, utils_1.isStandardFont)(font)) {
|
|
836
|
+
embedder = core_1.StandardFontEmbedder.for(font, customName);
|
|
837
|
+
}
|
|
838
|
+
else if ((0, utils_1.canBeConvertedToUint8Array)(font)) {
|
|
839
|
+
const bytes = (0, utils_1.toUint8Array)(font);
|
|
840
|
+
const fontkit = this.assertFontkit();
|
|
841
|
+
embedder = subset
|
|
842
|
+
? await core_1.CustomFontSubsetEmbedder.for(fontkit, bytes, customName, features)
|
|
843
|
+
: await core_1.CustomFontEmbedder.for(fontkit, bytes, customName, features);
|
|
844
|
+
}
|
|
845
|
+
else {
|
|
846
|
+
throw new TypeError('`font` must be one of `StandardFonts | string | Uint8Array | ArrayBuffer`');
|
|
847
|
+
}
|
|
848
|
+
const ref = this.context.nextRef();
|
|
849
|
+
const pdfFont = PDFFont_1.default.of(ref, this, embedder);
|
|
850
|
+
this.fonts.push(pdfFont);
|
|
851
|
+
return pdfFont;
|
|
852
|
+
}
|
|
900
853
|
/**
|
|
901
854
|
* Embed a standard font into this document.
|
|
902
855
|
* For example:
|
|
@@ -908,17 +861,17 @@ var PDFDocument = /** @class */ (function () {
|
|
|
908
861
|
* @param customName The name to be used when embedding the font.
|
|
909
862
|
* @returns The embedded font.
|
|
910
863
|
*/
|
|
911
|
-
|
|
912
|
-
utils_1.assertIs(font, 'font', ['string']);
|
|
913
|
-
if (!utils_1.isStandardFont(font)) {
|
|
864
|
+
embedStandardFont(font, customName) {
|
|
865
|
+
(0, utils_1.assertIs)(font, 'font', ['string']);
|
|
866
|
+
if (!(0, utils_1.isStandardFont)(font)) {
|
|
914
867
|
throw new TypeError('`font` must be one of type `StandardFonts`');
|
|
915
868
|
}
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
869
|
+
const embedder = core_1.StandardFontEmbedder.for(font, customName);
|
|
870
|
+
const ref = this.context.nextRef();
|
|
871
|
+
const pdfFont = PDFFont_1.default.of(ref, this, embedder);
|
|
919
872
|
this.fonts.push(pdfFont);
|
|
920
873
|
return pdfFont;
|
|
921
|
-
}
|
|
874
|
+
}
|
|
922
875
|
/**
|
|
923
876
|
* Embed a JPEG image into this document. The input data can be provided in
|
|
924
877
|
* multiple formats:
|
|
@@ -949,25 +902,15 @@ var PDFDocument = /** @class */ (function () {
|
|
|
949
902
|
* @param jpg The input data for a JPEG image.
|
|
950
903
|
* @returns Resolves with the embedded image.
|
|
951
904
|
*/
|
|
952
|
-
|
|
953
|
-
|
|
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
|
-
});
|
|
969
|
-
});
|
|
970
|
-
};
|
|
905
|
+
async embedJpg(jpg) {
|
|
906
|
+
(0, utils_1.assertIs)(jpg, 'jpg', ['string', Uint8Array, ArrayBuffer]);
|
|
907
|
+
const bytes = (0, utils_1.toUint8Array)(jpg);
|
|
908
|
+
const embedder = await core_1.JpegEmbedder.for(bytes);
|
|
909
|
+
const ref = this.context.nextRef();
|
|
910
|
+
const pdfImage = PDFImage_1.default.of(ref, this, embedder);
|
|
911
|
+
this.images.push(pdfImage);
|
|
912
|
+
return pdfImage;
|
|
913
|
+
}
|
|
971
914
|
/**
|
|
972
915
|
* Embed a PNG image into this document. The input data can be provided in
|
|
973
916
|
* multiple formats:
|
|
@@ -998,25 +941,15 @@ var PDFDocument = /** @class */ (function () {
|
|
|
998
941
|
* @param png The input data for a PNG image.
|
|
999
942
|
* @returns Resolves with the embedded image.
|
|
1000
943
|
*/
|
|
1001
|
-
|
|
1002
|
-
|
|
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
|
-
});
|
|
1018
|
-
});
|
|
1019
|
-
};
|
|
944
|
+
async embedPng(png) {
|
|
945
|
+
(0, utils_1.assertIs)(png, 'png', ['string', Uint8Array, ArrayBuffer]);
|
|
946
|
+
const bytes = (0, utils_1.toUint8Array)(png);
|
|
947
|
+
const embedder = await core_1.PngEmbedder.for(bytes);
|
|
948
|
+
const ref = this.context.nextRef();
|
|
949
|
+
const pdfImage = PDFImage_1.default.of(ref, this, embedder);
|
|
950
|
+
this.images.push(pdfImage);
|
|
951
|
+
return pdfImage;
|
|
952
|
+
}
|
|
1020
953
|
/**
|
|
1021
954
|
* Embed one or more PDF pages into this document.
|
|
1022
955
|
*
|
|
@@ -1037,35 +970,18 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1037
970
|
* @param indices The indices of the pages that should be embedded.
|
|
1038
971
|
* @returns Resolves with an array of the embedded pages.
|
|
1039
972
|
*/
|
|
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
|
-
});
|
|
1067
|
-
});
|
|
1068
|
-
};
|
|
973
|
+
async embedPdf(pdf, indices = [0]) {
|
|
974
|
+
(0, utils_1.assertIs)(pdf, 'pdf', [
|
|
975
|
+
'string',
|
|
976
|
+
Uint8Array,
|
|
977
|
+
ArrayBuffer,
|
|
978
|
+
[PDFDocument, 'PDFDocument'],
|
|
979
|
+
]);
|
|
980
|
+
(0, utils_1.assertIs)(indices, 'indices', [Array]);
|
|
981
|
+
const srcDoc = pdf instanceof PDFDocument ? pdf : await PDFDocument.load(pdf);
|
|
982
|
+
const srcPages = (0, utils_1.pluckIndices)(srcDoc.getPages(), indices);
|
|
983
|
+
return this.embedPages(srcPages);
|
|
984
|
+
}
|
|
1069
985
|
/**
|
|
1070
986
|
* Embed a single PDF page into this document.
|
|
1071
987
|
*
|
|
@@ -1098,21 +1014,11 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1098
1014
|
* page anywhere it is drawn.
|
|
1099
1015
|
* @returns Resolves with the embedded pdf page.
|
|
1100
1016
|
*/
|
|
1101
|
-
|
|
1102
|
-
|
|
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
|
-
});
|
|
1114
|
-
});
|
|
1115
|
-
};
|
|
1017
|
+
async embedPage(page, boundingBox, transformationMatrix) {
|
|
1018
|
+
(0, utils_1.assertIs)(page, 'page', [[PDFPage_1.default, 'PDFPage']]);
|
|
1019
|
+
const [embeddedPage] = await this.embedPages([page], [boundingBox], [transformationMatrix]);
|
|
1020
|
+
return embeddedPage;
|
|
1021
|
+
}
|
|
1116
1022
|
/**
|
|
1117
1023
|
* Embed one or more PDF pages into this document.
|
|
1118
1024
|
*
|
|
@@ -1141,53 +1047,33 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1141
1047
|
* (each page's transformation will apply anywhere it is drawn).
|
|
1142
1048
|
* @returns Resolves with an array of the embedded pdf pages.
|
|
1143
1049
|
*/
|
|
1144
|
-
|
|
1145
|
-
if (
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
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];
|
|
1187
|
-
}
|
|
1188
|
-
});
|
|
1189
|
-
});
|
|
1190
|
-
};
|
|
1050
|
+
async embedPages(pages, boundingBoxes = [], transformationMatrices = []) {
|
|
1051
|
+
if (pages.length === 0)
|
|
1052
|
+
return [];
|
|
1053
|
+
// Assert all pages have the same context
|
|
1054
|
+
for (let idx = 0, len = pages.length - 1; idx < len; idx++) {
|
|
1055
|
+
const currPage = pages[idx];
|
|
1056
|
+
const nextPage = pages[idx + 1];
|
|
1057
|
+
if (currPage.node.context !== nextPage.node.context) {
|
|
1058
|
+
throw new core_1.PageEmbeddingMismatchedContextError();
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
const context = pages[0].node.context;
|
|
1062
|
+
const maybeCopyPage = context === this.context
|
|
1063
|
+
? (p) => p
|
|
1064
|
+
: core_1.PDFObjectCopier.for(context, this.context).copy;
|
|
1065
|
+
const embeddedPages = new Array(pages.length);
|
|
1066
|
+
for (let idx = 0, len = pages.length; idx < len; idx++) {
|
|
1067
|
+
const page = maybeCopyPage(pages[idx].node);
|
|
1068
|
+
const box = boundingBoxes[idx];
|
|
1069
|
+
const matrix = transformationMatrices[idx];
|
|
1070
|
+
const embedder = await core_1.PDFPageEmbedder.for(page, box, matrix);
|
|
1071
|
+
const ref = this.context.nextRef();
|
|
1072
|
+
embeddedPages[idx] = PDFEmbeddedPage_1.default.of(ref, this, embedder);
|
|
1073
|
+
}
|
|
1074
|
+
this.embeddedPages.push(...embeddedPages);
|
|
1075
|
+
return embeddedPages;
|
|
1076
|
+
}
|
|
1191
1077
|
/**
|
|
1192
1078
|
* > **NOTE:** You shouldn't need to call this method directly. The [[save]]
|
|
1193
1079
|
* > and [[saveAsBase64]] methods will automatically ensure that all embedded
|
|
@@ -1198,30 +1084,13 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1198
1084
|
*
|
|
1199
1085
|
* @returns Resolves when the flush is complete.
|
|
1200
1086
|
*/
|
|
1201
|
-
|
|
1202
|
-
|
|
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
|
-
});
|
|
1223
|
-
});
|
|
1224
|
-
};
|
|
1087
|
+
async flush() {
|
|
1088
|
+
await this.embedAll(this.fonts);
|
|
1089
|
+
await this.embedAll(this.images);
|
|
1090
|
+
await this.embedAll(this.embeddedPages);
|
|
1091
|
+
await this.embedAll(this.embeddedFiles);
|
|
1092
|
+
await this.embedAll(this.javaScripts);
|
|
1093
|
+
}
|
|
1225
1094
|
/**
|
|
1226
1095
|
* Serialize this document to an array of bytes making up a PDF file.
|
|
1227
1096
|
* For example:
|
|
@@ -1238,34 +1107,23 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1238
1107
|
* @param options The options to be used when saving the document.
|
|
1239
1108
|
* @returns Resolves with the bytes of the serialized document.
|
|
1240
1109
|
*/
|
|
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
|
-
});
|
|
1267
|
-
});
|
|
1268
|
-
};
|
|
1110
|
+
async save(options = {}) {
|
|
1111
|
+
const { useObjectStreams = true, addDefaultPage = true, objectsPerTick = 50, updateFieldAppearances = true, } = options;
|
|
1112
|
+
(0, utils_1.assertIs)(useObjectStreams, 'useObjectStreams', ['boolean']);
|
|
1113
|
+
(0, utils_1.assertIs)(addDefaultPage, 'addDefaultPage', ['boolean']);
|
|
1114
|
+
(0, utils_1.assertIs)(objectsPerTick, 'objectsPerTick', ['number']);
|
|
1115
|
+
(0, utils_1.assertIs)(updateFieldAppearances, 'updateFieldAppearances', ['boolean']);
|
|
1116
|
+
if (addDefaultPage && this.getPageCount() === 0)
|
|
1117
|
+
this.addPage();
|
|
1118
|
+
if (updateFieldAppearances) {
|
|
1119
|
+
const form = this.formCache.getValue();
|
|
1120
|
+
if (form)
|
|
1121
|
+
form.updateFieldAppearances();
|
|
1122
|
+
}
|
|
1123
|
+
await this.flush();
|
|
1124
|
+
const Writer = useObjectStreams ? core_1.PDFStreamWriter : core_1.PDFWriter;
|
|
1125
|
+
return Writer.forContext(this.context, objectsPerTick).serializeToBuffer();
|
|
1126
|
+
}
|
|
1269
1127
|
/**
|
|
1270
1128
|
* Serialize this document to a base64 encoded string or data URI making up a
|
|
1271
1129
|
* PDF file. For example:
|
|
@@ -1281,83 +1139,54 @@ var PDFDocument = /** @class */ (function () {
|
|
|
1281
1139
|
* @returns Resolves with a base64 encoded string or data URI of the
|
|
1282
1140
|
* serialized document.
|
|
1283
1141
|
*/
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
base64 = utils_1.encodeToBase64(bytes);
|
|
1297
|
-
return [2 /*return*/, dataUri ? "data:application/pdf;base64," + base64 : base64];
|
|
1298
|
-
}
|
|
1299
|
-
});
|
|
1300
|
-
});
|
|
1301
|
-
};
|
|
1302
|
-
PDFDocument.prototype.findPageForAnnotationRef = function (ref) {
|
|
1303
|
-
var pages = this.getPages();
|
|
1304
|
-
for (var idx = 0, len = pages.length; idx < len; idx++) {
|
|
1305
|
-
var page = pages[idx];
|
|
1306
|
-
var annotations = page.node.Annots();
|
|
1142
|
+
async saveAsBase64(options = {}) {
|
|
1143
|
+
const { dataUri = false, ...otherOptions } = options;
|
|
1144
|
+
(0, utils_1.assertIs)(dataUri, 'dataUri', ['boolean']);
|
|
1145
|
+
const bytes = await this.save(otherOptions);
|
|
1146
|
+
const base64 = (0, utils_1.encodeToBase64)(bytes);
|
|
1147
|
+
return dataUri ? `data:application/pdf;base64,${base64}` : base64;
|
|
1148
|
+
}
|
|
1149
|
+
findPageForAnnotationRef(ref) {
|
|
1150
|
+
const pages = this.getPages();
|
|
1151
|
+
for (let idx = 0, len = pages.length; idx < len; idx++) {
|
|
1152
|
+
const page = pages[idx];
|
|
1153
|
+
const annotations = page.node.Annots();
|
|
1307
1154
|
if ((annotations === null || annotations === void 0 ? void 0 : annotations.indexOf(ref)) !== undefined) {
|
|
1308
1155
|
return page;
|
|
1309
1156
|
}
|
|
1310
1157
|
}
|
|
1311
1158
|
return undefined;
|
|
1312
|
-
}
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
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
|
-
});
|
|
1333
|
-
});
|
|
1334
|
-
};
|
|
1335
|
-
PDFDocument.prototype.updateInfoDict = function () {
|
|
1336
|
-
var pdfLib = "pdf-lib (https://github.com/Hopding/pdf-lib)";
|
|
1337
|
-
var now = new Date();
|
|
1338
|
-
var info = this.getInfoDict();
|
|
1159
|
+
}
|
|
1160
|
+
async embedAll(embeddables) {
|
|
1161
|
+
for (let idx = 0, len = embeddables.length; idx < len; idx++) {
|
|
1162
|
+
await embeddables[idx].embed();
|
|
1163
|
+
}
|
|
1164
|
+
}
|
|
1165
|
+
updateInfoDict() {
|
|
1166
|
+
const pdfLib = `pdf-lib (https://github.com/Hopding/pdf-lib)`;
|
|
1167
|
+
const now = new Date();
|
|
1168
|
+
const info = this.getInfoDict();
|
|
1339
1169
|
this.setProducer(pdfLib);
|
|
1340
1170
|
this.setModificationDate(now);
|
|
1341
1171
|
if (!info.get(core_1.PDFName.of('Creator')))
|
|
1342
1172
|
this.setCreator(pdfLib);
|
|
1343
1173
|
if (!info.get(core_1.PDFName.of('CreationDate')))
|
|
1344
1174
|
this.setCreationDate(now);
|
|
1345
|
-
}
|
|
1346
|
-
|
|
1347
|
-
|
|
1175
|
+
}
|
|
1176
|
+
getInfoDict() {
|
|
1177
|
+
const existingInfo = this.context.lookup(this.context.trailerInfo.Info);
|
|
1348
1178
|
if (existingInfo instanceof core_1.PDFDict)
|
|
1349
1179
|
return existingInfo;
|
|
1350
|
-
|
|
1180
|
+
const newInfo = this.context.obj({});
|
|
1351
1181
|
this.context.trailerInfo.Info = this.context.register(newInfo);
|
|
1352
1182
|
return newInfo;
|
|
1353
|
-
}
|
|
1354
|
-
|
|
1183
|
+
}
|
|
1184
|
+
assertFontkit() {
|
|
1355
1185
|
if (!this.fontkit)
|
|
1356
1186
|
throw new errors_1.FontkitNotRegisteredError();
|
|
1357
1187
|
return this.fontkit;
|
|
1358
|
-
}
|
|
1359
|
-
|
|
1360
|
-
}());
|
|
1188
|
+
}
|
|
1189
|
+
}
|
|
1361
1190
|
exports.default = PDFDocument;
|
|
1362
1191
|
/* tslint:disable-next-line only-arrow-functions */
|
|
1363
1192
|
function assertIsLiteralOrHexString(pdfObject) {
|