@adnsistemas/pdf-lib 2.8.1 → 2.9.0
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 +7 -2
- package/cjs/api/PDFDocument.d.ts +3 -0
- package/cjs/api/PDFDocument.d.ts.map +1 -1
- package/cjs/api/PDFDocument.js +22 -15
- package/cjs/api/PDFDocument.js.map +1 -1
- package/cjs/api/PDFFont.d.ts.map +1 -1
- package/cjs/api/PDFFont.js +4 -2
- package/cjs/api/PDFFont.js.map +1 -1
- package/cjs/api/PDFPage.d.ts.map +1 -1
- package/cjs/api/PDFPage.js +5 -4
- package/cjs/api/PDFPage.js.map +1 -1
- package/cjs/api/form/PDFButton.d.ts +3 -0
- package/cjs/api/form/PDFButton.d.ts.map +1 -1
- package/cjs/api/form/PDFButton.js +6 -1
- package/cjs/api/form/PDFButton.js.map +1 -1
- package/cjs/api/form/PDFCheckBox.d.ts +3 -0
- package/cjs/api/form/PDFCheckBox.d.ts.map +1 -1
- package/cjs/api/form/PDFCheckBox.js +6 -1
- package/cjs/api/form/PDFCheckBox.js.map +1 -1
- package/cjs/api/form/PDFDropdown.d.ts +3 -0
- package/cjs/api/form/PDFDropdown.d.ts.map +1 -1
- package/cjs/api/form/PDFDropdown.js +6 -1
- package/cjs/api/form/PDFDropdown.js.map +1 -1
- package/cjs/api/form/PDFField.d.ts +3 -0
- package/cjs/api/form/PDFField.d.ts.map +1 -1
- package/cjs/api/form/PDFField.js +5 -0
- package/cjs/api/form/PDFField.js.map +1 -1
- package/cjs/api/form/PDFForm.d.ts.map +1 -1
- package/cjs/api/form/PDFForm.js +24 -22
- package/cjs/api/form/PDFForm.js.map +1 -1
- package/cjs/api/form/PDFOptionList.d.ts +3 -0
- package/cjs/api/form/PDFOptionList.d.ts.map +1 -1
- package/cjs/api/form/PDFOptionList.js +6 -1
- package/cjs/api/form/PDFOptionList.js.map +1 -1
- package/cjs/api/form/PDFRadioGroup.d.ts +3 -0
- package/cjs/api/form/PDFRadioGroup.d.ts.map +1 -1
- package/cjs/api/form/PDFRadioGroup.js +7 -2
- package/cjs/api/form/PDFRadioGroup.js.map +1 -1
- package/cjs/api/form/PDFSignature.d.ts +3 -0
- package/cjs/api/form/PDFSignature.d.ts.map +1 -1
- package/cjs/api/form/PDFSignature.js +5 -0
- package/cjs/api/form/PDFSignature.js.map +1 -1
- package/cjs/api/form/PDFTextField.d.ts +3 -0
- package/cjs/api/form/PDFTextField.d.ts.map +1 -1
- package/cjs/api/form/PDFTextField.js +6 -1
- package/cjs/api/form/PDFTextField.js.map +1 -1
- package/cjs/api/objects.d.ts +61 -0
- package/cjs/api/objects.d.ts.map +1 -1
- package/cjs/api/objects.js +97 -4
- package/cjs/api/objects.js.map +1 -1
- package/cjs/api/operators.d.ts +28 -24
- package/cjs/api/operators.d.ts.map +1 -1
- package/cjs/api/operators.js +33 -29
- package/cjs/api/operators.js.map +1 -1
- package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
- package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
- package/cjs/api/snapshot/DefaultDocumentSnapshot.js +5 -0
- package/cjs/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
- package/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
- package/cjs/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
- package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
- package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
- package/cjs/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
- package/cjs/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
- package/cjs/core/PDFContext.d.ts +1 -1
- package/cjs/core/PDFContext.d.ts.map +1 -1
- package/cjs/core/PDFContext.js +33 -35
- package/cjs/core/PDFContext.js.map +1 -1
- package/cjs/core/PDFObjectCopier.d.ts.map +1 -1
- package/cjs/core/PDFObjectCopier.js +6 -9
- package/cjs/core/PDFObjectCopier.js.map +1 -1
- package/cjs/core/acroform/PDFAcroButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroButton.js +7 -3
- package/cjs/core/acroform/PDFAcroButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroCheckBox.js +6 -1
- package/cjs/core/acroform/PDFAcroCheckBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroChoice.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroChoice.js +22 -9
- package/cjs/core/acroform/PDFAcroChoice.js.map +1 -1
- package/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroComboBox.js +5 -0
- package/cjs/core/acroform/PDFAcroComboBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroField.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroField.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroField.js +9 -4
- package/cjs/core/acroform/PDFAcroField.js.map +1 -1
- package/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroForm.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroForm.js +7 -4
- package/cjs/core/acroform/PDFAcroForm.js.map +1 -1
- package/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroListBox.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroListBox.js +5 -0
- package/cjs/core/acroform/PDFAcroListBox.js.map +1 -1
- package/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroNonTerminal.js +5 -0
- package/cjs/core/acroform/PDFAcroNonTerminal.js.map +1 -1
- package/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroPushButton.js +5 -0
- package/cjs/core/acroform/PDFAcroPushButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroRadioButton.js +6 -1
- package/cjs/core/acroform/PDFAcroRadioButton.js.map +1 -1
- package/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroSignature.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroSignature.js +5 -0
- package/cjs/core/acroform/PDFAcroSignature.js.map +1 -1
- package/cjs/core/acroform/PDFAcroText.d.ts +3 -0
- package/cjs/core/acroform/PDFAcroText.d.ts.map +1 -1
- package/cjs/core/acroform/PDFAcroText.js +9 -5
- package/cjs/core/acroform/PDFAcroText.js.map +1 -1
- package/cjs/core/acroform/utils.d.ts.map +1 -1
- package/cjs/core/acroform/utils.js +11 -7
- package/cjs/core/acroform/utils.js.map +1 -1
- package/cjs/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
- package/cjs/core/annotation/AppearanceCharacteristics.js +12 -11
- package/cjs/core/annotation/AppearanceCharacteristics.js.map +1 -1
- package/cjs/core/annotation/BorderStyle.d.ts.map +1 -1
- package/cjs/core/annotation/BorderStyle.js +2 -2
- package/cjs/core/annotation/BorderStyle.js.map +1 -1
- package/cjs/core/annotation/PDFAnnotation.d.ts.map +1 -1
- package/cjs/core/annotation/PDFAnnotation.js +4 -3
- package/cjs/core/annotation/PDFAnnotation.js.map +1 -1
- package/cjs/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
- package/cjs/core/annotation/PDFWidgetAnnotation.js +8 -9
- package/cjs/core/annotation/PDFWidgetAnnotation.js.map +1 -1
- package/cjs/core/crypto.d.ts +3 -0
- package/cjs/core/crypto.d.ts.map +1 -1
- package/cjs/core/crypto.js +10 -5
- package/cjs/core/crypto.js.map +1 -1
- package/cjs/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/PDFPageEmbedder.js +3 -4
- package/cjs/core/embedders/PDFPageEmbedder.js.map +1 -1
- package/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
- package/cjs/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
- package/cjs/core/embedders/StandardFontEmbedder.js +5 -0
- package/cjs/core/embedders/StandardFontEmbedder.js.map +1 -1
- package/cjs/core/interactive/ViewerPreferences.d.ts.map +1 -1
- package/cjs/core/interactive/ViewerPreferences.js +5 -6
- package/cjs/core/interactive/ViewerPreferences.js.map +1 -1
- package/cjs/core/objects/PDFArray.d.ts +3 -0
- package/cjs/core/objects/PDFArray.d.ts.map +1 -1
- package/cjs/core/objects/PDFArray.js +6 -1
- package/cjs/core/objects/PDFArray.js.map +1 -1
- package/cjs/core/objects/PDFBool.d.ts +3 -0
- package/cjs/core/objects/PDFBool.d.ts.map +1 -1
- package/cjs/core/objects/PDFBool.js +5 -0
- package/cjs/core/objects/PDFBool.js.map +1 -1
- package/cjs/core/objects/PDFDict.d.ts +3 -0
- package/cjs/core/objects/PDFDict.d.ts.map +1 -1
- package/cjs/core/objects/PDFDict.js +5 -0
- package/cjs/core/objects/PDFDict.js.map +1 -1
- package/cjs/core/objects/PDFHexString.d.ts +3 -0
- package/cjs/core/objects/PDFHexString.d.ts.map +1 -1
- package/cjs/core/objects/PDFHexString.js +5 -0
- package/cjs/core/objects/PDFHexString.js.map +1 -1
- package/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
- package/cjs/core/objects/PDFInvalidObject.d.ts.map +1 -1
- package/cjs/core/objects/PDFInvalidObject.js +5 -0
- package/cjs/core/objects/PDFInvalidObject.js.map +1 -1
- package/cjs/core/objects/PDFName.d.ts +3 -0
- package/cjs/core/objects/PDFName.d.ts.map +1 -1
- package/cjs/core/objects/PDFName.js +5 -0
- package/cjs/core/objects/PDFName.js.map +1 -1
- package/cjs/core/objects/PDFNull.d.ts +3 -0
- package/cjs/core/objects/PDFNull.d.ts.map +1 -1
- package/cjs/core/objects/PDFNull.js +5 -0
- package/cjs/core/objects/PDFNull.js.map +1 -1
- package/cjs/core/objects/PDFNumber.d.ts +3 -0
- package/cjs/core/objects/PDFNumber.d.ts.map +1 -1
- package/cjs/core/objects/PDFNumber.js +5 -0
- package/cjs/core/objects/PDFNumber.js.map +1 -1
- package/cjs/core/objects/PDFObject.d.ts +3 -0
- package/cjs/core/objects/PDFObject.d.ts.map +1 -1
- package/cjs/core/objects/PDFObject.js +5 -0
- package/cjs/core/objects/PDFObject.js.map +1 -1
- package/cjs/core/objects/PDFRawStream.d.ts +3 -0
- package/cjs/core/objects/PDFRawStream.d.ts.map +1 -1
- package/cjs/core/objects/PDFRawStream.js +5 -0
- package/cjs/core/objects/PDFRawStream.js.map +1 -1
- package/cjs/core/objects/PDFRef.d.ts +3 -0
- package/cjs/core/objects/PDFRef.d.ts.map +1 -1
- package/cjs/core/objects/PDFRef.js +5 -0
- package/cjs/core/objects/PDFRef.js.map +1 -1
- package/cjs/core/objects/PDFStream.d.ts +3 -0
- package/cjs/core/objects/PDFStream.d.ts.map +1 -1
- package/cjs/core/objects/PDFStream.js +5 -0
- package/cjs/core/objects/PDFStream.js.map +1 -1
- package/cjs/core/objects/PDFString.d.ts +3 -0
- package/cjs/core/objects/PDFString.d.ts.map +1 -1
- package/cjs/core/objects/PDFString.js +5 -0
- package/cjs/core/objects/PDFString.js.map +1 -1
- package/cjs/core/operators/PDFOperator.d.ts.map +1 -1
- package/cjs/core/operators/PDFOperator.js +9 -4
- package/cjs/core/operators/PDFOperator.js.map +1 -1
- package/cjs/core/parser/PDFObjectParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFObjectParser.js +2 -1
- package/cjs/core/parser/PDFObjectParser.js.map +1 -1
- package/cjs/core/parser/PDFParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFParser.js +8 -7
- package/cjs/core/parser/PDFParser.js.map +1 -1
- package/cjs/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
- package/cjs/core/parser/PDFXRefStreamParser.js +8 -3
- package/cjs/core/parser/PDFXRefStreamParser.js.map +1 -1
- package/cjs/core/streams/decode.d.ts.map +1 -1
- package/cjs/core/streams/decode.js +5 -5
- package/cjs/core/streams/decode.js.map +1 -1
- package/cjs/core/structures/PDFCatalog.d.ts +3 -0
- package/cjs/core/structures/PDFCatalog.d.ts.map +1 -1
- package/cjs/core/structures/PDFCatalog.js +5 -0
- package/cjs/core/structures/PDFCatalog.js.map +1 -1
- package/cjs/core/structures/PDFContentStream.d.ts +3 -0
- package/cjs/core/structures/PDFContentStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFContentStream.js +5 -0
- package/cjs/core/structures/PDFContentStream.js.map +1 -1
- package/cjs/core/structures/PDFObjectStream.d.ts +3 -0
- package/cjs/core/structures/PDFObjectStream.d.ts.map +1 -1
- package/cjs/core/structures/PDFObjectStream.js +5 -0
- package/cjs/core/structures/PDFObjectStream.js.map +1 -1
- package/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
- package/cjs/core/structures/PDFPageLeaf.d.ts.map +1 -1
- package/cjs/core/structures/PDFPageLeaf.js +7 -3
- package/cjs/core/structures/PDFPageLeaf.js.map +1 -1
- package/cjs/core/structures/PDFPageTree.d.ts +3 -0
- package/cjs/core/structures/PDFPageTree.d.ts.map +1 -1
- package/cjs/core/structures/PDFPageTree.js +11 -7
- package/cjs/core/structures/PDFPageTree.js.map +1 -1
- package/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
- package/cjs/core/writers/PDFStreamWriter.d.ts.map +1 -1
- package/cjs/core/writers/PDFStreamWriter.js +11 -12
- package/cjs/core/writers/PDFStreamWriter.js.map +1 -1
- package/cjs/core/writers/PDFWriter.d.ts +3 -0
- package/cjs/core/writers/PDFWriter.d.ts.map +1 -1
- package/cjs/core/writers/PDFWriter.js +13 -8
- package/cjs/core/writers/PDFWriter.js.map +1 -1
- package/cjs/utils/elements/Arc.d.ts +3 -0
- package/cjs/utils/elements/Arc.d.ts.map +1 -1
- package/cjs/utils/elements/Arc.js +6 -1
- package/cjs/utils/elements/Arc.js.map +1 -1
- package/cjs/utils/elements/Circle.d.ts +3 -0
- package/cjs/utils/elements/Circle.d.ts.map +1 -1
- package/cjs/utils/elements/Circle.js +6 -1
- package/cjs/utils/elements/Circle.js.map +1 -1
- package/cjs/utils/elements/Ellipse.d.ts +3 -0
- package/cjs/utils/elements/Ellipse.d.ts.map +1 -1
- package/cjs/utils/elements/Ellipse.js +6 -1
- package/cjs/utils/elements/Ellipse.js.map +1 -1
- package/cjs/utils/elements/GraphElement.d.ts +2 -0
- package/cjs/utils/elements/GraphElement.d.ts.map +1 -1
- package/cjs/utils/elements/GraphElement.js.map +1 -1
- package/cjs/utils/elements/Line.d.ts +3 -0
- package/cjs/utils/elements/Line.d.ts.map +1 -1
- package/cjs/utils/elements/Line.js +6 -1
- package/cjs/utils/elements/Line.js.map +1 -1
- package/cjs/utils/elements/Plot.d.ts +3 -0
- package/cjs/utils/elements/Plot.d.ts.map +1 -1
- package/cjs/utils/elements/Plot.js +9 -2
- package/cjs/utils/elements/Plot.js.map +1 -1
- package/cjs/utils/elements/Point.d.ts +3 -0
- package/cjs/utils/elements/Point.d.ts.map +1 -1
- package/cjs/utils/elements/Point.js +6 -1
- package/cjs/utils/elements/Point.js.map +1 -1
- package/cjs/utils/elements/Rectangle.d.ts +3 -0
- package/cjs/utils/elements/Rectangle.d.ts.map +1 -1
- package/cjs/utils/elements/Rectangle.js +6 -1
- package/cjs/utils/elements/Rectangle.js.map +1 -1
- package/cjs/utils/elements/Segment.d.ts +3 -0
- package/cjs/utils/elements/Segment.d.ts.map +1 -1
- package/cjs/utils/elements/Segment.js +8 -4
- package/cjs/utils/elements/Segment.js.map +1 -1
- package/cjs/utils/intersections.d.ts.map +1 -1
- package/cjs/utils/intersections.js +32 -35
- package/cjs/utils/intersections.js.map +1 -1
- package/dist/pdf-lib.esm.js +4794 -4480
- package/dist/pdf-lib.esm.js.map +1 -1
- package/dist/pdf-lib.esm.min.js +3 -3
- package/dist/pdf-lib.esm.min.js.map +1 -1
- package/dist/pdf-lib.js +4794 -4479
- package/dist/pdf-lib.js.map +1 -1
- package/dist/pdf-lib.min.js +3 -3
- package/dist/pdf-lib.min.js.map +1 -1
- package/es/api/PDFDocument.d.ts +3 -0
- package/es/api/PDFDocument.d.ts.map +1 -1
- package/es/api/PDFDocument.js +23 -16
- package/es/api/PDFDocument.js.map +1 -1
- package/es/api/PDFFont.d.ts.map +1 -1
- package/es/api/PDFFont.js +4 -2
- package/es/api/PDFFont.js.map +1 -1
- package/es/api/PDFPage.d.ts.map +1 -1
- package/es/api/PDFPage.js +6 -5
- package/es/api/PDFPage.js.map +1 -1
- package/es/api/form/PDFButton.d.ts +3 -0
- package/es/api/form/PDFButton.d.ts.map +1 -1
- package/es/api/form/PDFButton.js +7 -2
- package/es/api/form/PDFButton.js.map +1 -1
- package/es/api/form/PDFCheckBox.d.ts +3 -0
- package/es/api/form/PDFCheckBox.d.ts.map +1 -1
- package/es/api/form/PDFCheckBox.js +7 -2
- package/es/api/form/PDFCheckBox.js.map +1 -1
- package/es/api/form/PDFDropdown.d.ts +3 -0
- package/es/api/form/PDFDropdown.d.ts.map +1 -1
- package/es/api/form/PDFDropdown.js +7 -2
- package/es/api/form/PDFDropdown.js.map +1 -1
- package/es/api/form/PDFField.d.ts +3 -0
- package/es/api/form/PDFField.d.ts.map +1 -1
- package/es/api/form/PDFField.js +5 -0
- package/es/api/form/PDFField.js.map +1 -1
- package/es/api/form/PDFForm.d.ts.map +1 -1
- package/es/api/form/PDFForm.js +25 -23
- package/es/api/form/PDFForm.js.map +1 -1
- package/es/api/form/PDFOptionList.d.ts +3 -0
- package/es/api/form/PDFOptionList.d.ts.map +1 -1
- package/es/api/form/PDFOptionList.js +7 -2
- package/es/api/form/PDFOptionList.js.map +1 -1
- package/es/api/form/PDFRadioGroup.d.ts +3 -0
- package/es/api/form/PDFRadioGroup.d.ts.map +1 -1
- package/es/api/form/PDFRadioGroup.js +8 -3
- package/es/api/form/PDFRadioGroup.js.map +1 -1
- package/es/api/form/PDFSignature.d.ts +3 -0
- package/es/api/form/PDFSignature.d.ts.map +1 -1
- package/es/api/form/PDFSignature.js +5 -0
- package/es/api/form/PDFSignature.js.map +1 -1
- package/es/api/form/PDFTextField.d.ts +3 -0
- package/es/api/form/PDFTextField.d.ts.map +1 -1
- package/es/api/form/PDFTextField.js +7 -2
- package/es/api/form/PDFTextField.js.map +1 -1
- package/es/api/objects.d.ts +61 -0
- package/es/api/objects.d.ts.map +1 -1
- package/es/api/objects.js +95 -3
- package/es/api/objects.js.map +1 -1
- package/es/api/operators.d.ts +28 -24
- package/es/api/operators.d.ts.map +1 -1
- package/es/api/operators.js +32 -28
- package/es/api/operators.js.map +1 -1
- package/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
- package/es/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
- package/es/api/snapshot/DefaultDocumentSnapshot.js +5 -0
- package/es/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
- package/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
- package/es/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
- package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
- package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
- package/es/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
- package/es/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
- package/es/core/PDFContext.d.ts +1 -1
- package/es/core/PDFContext.d.ts.map +1 -1
- package/es/core/PDFContext.js +33 -35
- package/es/core/PDFContext.js.map +1 -1
- package/es/core/PDFObjectCopier.d.ts.map +1 -1
- package/es/core/PDFObjectCopier.js +6 -9
- package/es/core/PDFObjectCopier.js.map +1 -1
- package/es/core/acroform/PDFAcroButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroButton.js +7 -3
- package/es/core/acroform/PDFAcroButton.js.map +1 -1
- package/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
- package/es/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroCheckBox.js +6 -1
- package/es/core/acroform/PDFAcroCheckBox.js.map +1 -1
- package/es/core/acroform/PDFAcroChoice.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroChoice.js +22 -9
- package/es/core/acroform/PDFAcroChoice.js.map +1 -1
- package/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
- package/es/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroComboBox.js +5 -0
- package/es/core/acroform/PDFAcroComboBox.js.map +1 -1
- package/es/core/acroform/PDFAcroField.d.ts +3 -0
- package/es/core/acroform/PDFAcroField.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroField.js +9 -4
- package/es/core/acroform/PDFAcroField.js.map +1 -1
- package/es/core/acroform/PDFAcroForm.d.ts +3 -0
- package/es/core/acroform/PDFAcroForm.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroForm.js +7 -4
- package/es/core/acroform/PDFAcroForm.js.map +1 -1
- package/es/core/acroform/PDFAcroListBox.d.ts +3 -0
- package/es/core/acroform/PDFAcroListBox.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroListBox.js +5 -0
- package/es/core/acroform/PDFAcroListBox.js.map +1 -1
- package/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
- package/es/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroNonTerminal.js +5 -0
- package/es/core/acroform/PDFAcroNonTerminal.js.map +1 -1
- package/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
- package/es/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroPushButton.js +5 -0
- package/es/core/acroform/PDFAcroPushButton.js.map +1 -1
- package/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
- package/es/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroRadioButton.js +6 -1
- package/es/core/acroform/PDFAcroRadioButton.js.map +1 -1
- package/es/core/acroform/PDFAcroSignature.d.ts +3 -0
- package/es/core/acroform/PDFAcroSignature.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroSignature.js +5 -0
- package/es/core/acroform/PDFAcroSignature.js.map +1 -1
- package/es/core/acroform/PDFAcroText.d.ts +3 -0
- package/es/core/acroform/PDFAcroText.d.ts.map +1 -1
- package/es/core/acroform/PDFAcroText.js +9 -5
- package/es/core/acroform/PDFAcroText.js.map +1 -1
- package/es/core/acroform/utils.d.ts.map +1 -1
- package/es/core/acroform/utils.js +11 -7
- package/es/core/acroform/utils.js.map +1 -1
- package/es/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
- package/es/core/annotation/AppearanceCharacteristics.js +12 -11
- package/es/core/annotation/AppearanceCharacteristics.js.map +1 -1
- package/es/core/annotation/BorderStyle.d.ts.map +1 -1
- package/es/core/annotation/BorderStyle.js +2 -2
- package/es/core/annotation/BorderStyle.js.map +1 -1
- package/es/core/annotation/PDFAnnotation.d.ts.map +1 -1
- package/es/core/annotation/PDFAnnotation.js +4 -3
- package/es/core/annotation/PDFAnnotation.js.map +1 -1
- package/es/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
- package/es/core/annotation/PDFWidgetAnnotation.js +8 -9
- package/es/core/annotation/PDFWidgetAnnotation.js.map +1 -1
- package/es/core/crypto.d.ts +3 -0
- package/es/core/crypto.d.ts.map +1 -1
- package/es/core/crypto.js +10 -5
- package/es/core/crypto.js.map +1 -1
- package/es/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
- package/es/core/embedders/PDFPageEmbedder.js +3 -4
- package/es/core/embedders/PDFPageEmbedder.js.map +1 -1
- package/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
- package/es/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
- package/es/core/embedders/StandardFontEmbedder.js +5 -0
- package/es/core/embedders/StandardFontEmbedder.js.map +1 -1
- package/es/core/interactive/ViewerPreferences.d.ts.map +1 -1
- package/es/core/interactive/ViewerPreferences.js +5 -6
- package/es/core/interactive/ViewerPreferences.js.map +1 -1
- package/es/core/objects/PDFArray.d.ts +3 -0
- package/es/core/objects/PDFArray.d.ts.map +1 -1
- package/es/core/objects/PDFArray.js +6 -1
- package/es/core/objects/PDFArray.js.map +1 -1
- package/es/core/objects/PDFBool.d.ts +3 -0
- package/es/core/objects/PDFBool.d.ts.map +1 -1
- package/es/core/objects/PDFBool.js +5 -0
- package/es/core/objects/PDFBool.js.map +1 -1
- package/es/core/objects/PDFDict.d.ts +3 -0
- package/es/core/objects/PDFDict.d.ts.map +1 -1
- package/es/core/objects/PDFDict.js +5 -0
- package/es/core/objects/PDFDict.js.map +1 -1
- package/es/core/objects/PDFHexString.d.ts +3 -0
- package/es/core/objects/PDFHexString.d.ts.map +1 -1
- package/es/core/objects/PDFHexString.js +5 -0
- package/es/core/objects/PDFHexString.js.map +1 -1
- package/es/core/objects/PDFInvalidObject.d.ts +3 -0
- package/es/core/objects/PDFInvalidObject.d.ts.map +1 -1
- package/es/core/objects/PDFInvalidObject.js +5 -0
- package/es/core/objects/PDFInvalidObject.js.map +1 -1
- package/es/core/objects/PDFName.d.ts +3 -0
- package/es/core/objects/PDFName.d.ts.map +1 -1
- package/es/core/objects/PDFName.js +5 -0
- package/es/core/objects/PDFName.js.map +1 -1
- package/es/core/objects/PDFNull.d.ts +3 -0
- package/es/core/objects/PDFNull.d.ts.map +1 -1
- package/es/core/objects/PDFNull.js +5 -0
- package/es/core/objects/PDFNull.js.map +1 -1
- package/es/core/objects/PDFNumber.d.ts +3 -0
- package/es/core/objects/PDFNumber.d.ts.map +1 -1
- package/es/core/objects/PDFNumber.js +5 -0
- package/es/core/objects/PDFNumber.js.map +1 -1
- package/es/core/objects/PDFObject.d.ts +3 -0
- package/es/core/objects/PDFObject.d.ts.map +1 -1
- package/es/core/objects/PDFObject.js +5 -0
- package/es/core/objects/PDFObject.js.map +1 -1
- package/es/core/objects/PDFRawStream.d.ts +3 -0
- package/es/core/objects/PDFRawStream.d.ts.map +1 -1
- package/es/core/objects/PDFRawStream.js +5 -0
- package/es/core/objects/PDFRawStream.js.map +1 -1
- package/es/core/objects/PDFRef.d.ts +3 -0
- package/es/core/objects/PDFRef.d.ts.map +1 -1
- package/es/core/objects/PDFRef.js +5 -0
- package/es/core/objects/PDFRef.js.map +1 -1
- package/es/core/objects/PDFStream.d.ts +3 -0
- package/es/core/objects/PDFStream.d.ts.map +1 -1
- package/es/core/objects/PDFStream.js +5 -0
- package/es/core/objects/PDFStream.js.map +1 -1
- package/es/core/objects/PDFString.d.ts +3 -0
- package/es/core/objects/PDFString.d.ts.map +1 -1
- package/es/core/objects/PDFString.js +5 -0
- package/es/core/objects/PDFString.js.map +1 -1
- package/es/core/operators/PDFOperator.d.ts.map +1 -1
- package/es/core/operators/PDFOperator.js +9 -4
- package/es/core/operators/PDFOperator.js.map +1 -1
- package/es/core/parser/PDFObjectParser.d.ts.map +1 -1
- package/es/core/parser/PDFObjectParser.js +2 -1
- package/es/core/parser/PDFObjectParser.js.map +1 -1
- package/es/core/parser/PDFParser.d.ts.map +1 -1
- package/es/core/parser/PDFParser.js +8 -7
- package/es/core/parser/PDFParser.js.map +1 -1
- package/es/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
- package/es/core/parser/PDFXRefStreamParser.js +8 -3
- package/es/core/parser/PDFXRefStreamParser.js.map +1 -1
- package/es/core/streams/decode.d.ts.map +1 -1
- package/es/core/streams/decode.js +5 -5
- package/es/core/streams/decode.js.map +1 -1
- package/es/core/structures/PDFCatalog.d.ts +3 -0
- package/es/core/structures/PDFCatalog.d.ts.map +1 -1
- package/es/core/structures/PDFCatalog.js +5 -0
- package/es/core/structures/PDFCatalog.js.map +1 -1
- package/es/core/structures/PDFContentStream.d.ts +3 -0
- package/es/core/structures/PDFContentStream.d.ts.map +1 -1
- package/es/core/structures/PDFContentStream.js +5 -0
- package/es/core/structures/PDFContentStream.js.map +1 -1
- package/es/core/structures/PDFObjectStream.d.ts +3 -0
- package/es/core/structures/PDFObjectStream.d.ts.map +1 -1
- package/es/core/structures/PDFObjectStream.js +5 -0
- package/es/core/structures/PDFObjectStream.js.map +1 -1
- package/es/core/structures/PDFPageLeaf.d.ts +3 -0
- package/es/core/structures/PDFPageLeaf.d.ts.map +1 -1
- package/es/core/structures/PDFPageLeaf.js +7 -3
- package/es/core/structures/PDFPageLeaf.js.map +1 -1
- package/es/core/structures/PDFPageTree.d.ts +3 -0
- package/es/core/structures/PDFPageTree.d.ts.map +1 -1
- package/es/core/structures/PDFPageTree.js +11 -7
- package/es/core/structures/PDFPageTree.js.map +1 -1
- package/es/core/writers/PDFStreamWriter.d.ts +3 -0
- package/es/core/writers/PDFStreamWriter.d.ts.map +1 -1
- package/es/core/writers/PDFStreamWriter.js +11 -12
- package/es/core/writers/PDFStreamWriter.js.map +1 -1
- package/es/core/writers/PDFWriter.d.ts +3 -0
- package/es/core/writers/PDFWriter.d.ts.map +1 -1
- package/es/core/writers/PDFWriter.js +14 -9
- package/es/core/writers/PDFWriter.js.map +1 -1
- package/es/utils/elements/Arc.d.ts +3 -0
- package/es/utils/elements/Arc.d.ts.map +1 -1
- package/es/utils/elements/Arc.js +6 -1
- package/es/utils/elements/Arc.js.map +1 -1
- package/es/utils/elements/Circle.d.ts +3 -0
- package/es/utils/elements/Circle.d.ts.map +1 -1
- package/es/utils/elements/Circle.js +6 -1
- package/es/utils/elements/Circle.js.map +1 -1
- package/es/utils/elements/Ellipse.d.ts +3 -0
- package/es/utils/elements/Ellipse.d.ts.map +1 -1
- package/es/utils/elements/Ellipse.js +6 -1
- package/es/utils/elements/Ellipse.js.map +1 -1
- package/es/utils/elements/GraphElement.d.ts +2 -0
- package/es/utils/elements/GraphElement.d.ts.map +1 -1
- package/es/utils/elements/GraphElement.js.map +1 -1
- package/es/utils/elements/Line.d.ts +3 -0
- package/es/utils/elements/Line.d.ts.map +1 -1
- package/es/utils/elements/Line.js +6 -1
- package/es/utils/elements/Line.js.map +1 -1
- package/es/utils/elements/Plot.d.ts +3 -0
- package/es/utils/elements/Plot.d.ts.map +1 -1
- package/es/utils/elements/Plot.js +9 -2
- package/es/utils/elements/Plot.js.map +1 -1
- package/es/utils/elements/Point.d.ts +3 -0
- package/es/utils/elements/Point.d.ts.map +1 -1
- package/es/utils/elements/Point.js +6 -1
- package/es/utils/elements/Point.js.map +1 -1
- package/es/utils/elements/Rectangle.d.ts +3 -0
- package/es/utils/elements/Rectangle.d.ts.map +1 -1
- package/es/utils/elements/Rectangle.js +6 -1
- package/es/utils/elements/Rectangle.js.map +1 -1
- package/es/utils/elements/Segment.d.ts +3 -0
- package/es/utils/elements/Segment.d.ts.map +1 -1
- package/es/utils/elements/Segment.js +8 -4
- package/es/utils/elements/Segment.js.map +1 -1
- package/es/utils/intersections.d.ts.map +1 -1
- package/es/utils/intersections.js +32 -35
- package/es/utils/intersections.js.map +1 -1
- package/package.json +1 -1
- package/src/api/PDFDocument.ts +41 -36
- package/src/api/PDFFont.ts +5 -3
- package/src/api/PDFPage.ts +10 -6
- package/src/api/form/PDFButton.ts +10 -8
- package/src/api/form/PDFCheckBox.ts +7 -2
- package/src/api/form/PDFDropdown.ts +9 -3
- package/src/api/form/PDFField.ts +5 -0
- package/src/api/form/PDFForm.ts +53 -34
- package/src/api/form/PDFOptionList.ts +9 -3
- package/src/api/form/PDFRadioGroup.ts +8 -3
- package/src/api/form/PDFSignature.ts +5 -0
- package/src/api/form/PDFTextField.ts +9 -3
- package/src/api/objects.ts +90 -3
- package/src/api/operators.ts +32 -28
- package/src/api/snapshot/DefaultDocumentSnapshot.ts +6 -0
- package/src/api/snapshot/DocumentSnapshot.ts +3 -0
- package/src/api/snapshot/IncrementalDocumentSnapshot.ts +6 -0
- package/src/core/PDFContext.ts +53 -39
- package/src/core/PDFObjectCopier.ts +6 -5
- package/src/core/acroform/PDFAcroButton.ts +20 -10
- package/src/core/acroform/PDFAcroCheckBox.ts +6 -1
- package/src/core/acroform/PDFAcroChoice.ts +43 -17
- package/src/core/acroform/PDFAcroComboBox.ts +5 -0
- package/src/core/acroform/PDFAcroField.ts +14 -5
- package/src/core/acroform/PDFAcroForm.ts +7 -3
- package/src/core/acroform/PDFAcroListBox.ts +5 -0
- package/src/core/acroform/PDFAcroNonTerminal.ts +5 -0
- package/src/core/acroform/PDFAcroPushButton.ts +5 -0
- package/src/core/acroform/PDFAcroRadioButton.ts +6 -1
- package/src/core/acroform/PDFAcroSignature.ts +5 -0
- package/src/core/acroform/PDFAcroText.ts +12 -3
- package/src/core/acroform/utils.ts +16 -7
- package/src/core/annotation/AppearanceCharacteristics.ts +23 -8
- package/src/core/annotation/BorderStyle.ts +2 -1
- package/src/core/annotation/PDFAnnotation.ts +7 -2
- package/src/core/annotation/PDFWidgetAnnotation.ts +13 -8
- package/src/core/crypto.ts +13 -5
- package/src/core/embedders/PDFPageEmbedder.ts +5 -4
- package/src/core/embedders/StandardFontEmbedder.ts +5 -0
- package/src/core/interactive/ViewerPreferences.ts +9 -4
- package/src/core/objects/PDFArray.ts +7 -2
- package/src/core/objects/PDFBool.ts +5 -0
- package/src/core/objects/PDFDict.ts +5 -0
- package/src/core/objects/PDFHexString.ts +5 -0
- package/src/core/objects/PDFInvalidObject.ts +5 -0
- package/src/core/objects/PDFName.ts +5 -0
- package/src/core/objects/PDFNull.ts +5 -0
- package/src/core/objects/PDFNumber.ts +5 -0
- package/src/core/objects/PDFObject.ts +6 -0
- package/src/core/objects/PDFRawStream.ts +5 -0
- package/src/core/objects/PDFRef.ts +5 -0
- package/src/core/objects/PDFStream.ts +5 -0
- package/src/core/objects/PDFString.ts +5 -0
- package/src/core/operators/PDFOperator.ts +11 -5
- package/src/core/parser/PDFObjectParser.ts +3 -2
- package/src/core/parser/PDFParser.ts +13 -8
- package/src/core/parser/PDFXRefStreamParser.ts +9 -4
- package/src/core/streams/decode.ts +10 -9
- package/src/core/structures/PDFCatalog.ts +5 -0
- package/src/core/structures/PDFContentStream.ts +5 -0
- package/src/core/structures/PDFObjectStream.ts +5 -0
- package/src/core/structures/PDFPageLeaf.ts +9 -4
- package/src/core/structures/PDFPageTree.ts +28 -13
- package/src/core/writers/PDFStreamWriter.ts +11 -11
- package/src/core/writers/PDFWriter.ts +19 -12
- package/src/utils/elements/Arc.ts +9 -4
- package/src/utils/elements/Circle.ts +8 -3
- package/src/utils/elements/Ellipse.ts +9 -4
- package/src/utils/elements/GraphElement.ts +3 -0
- package/src/utils/elements/Line.ts +12 -4
- package/src/utils/elements/Plot.ts +9 -2
- package/src/utils/elements/Point.ts +7 -2
- package/src/utils/elements/Rectangle.ts +8 -3
- package/src/utils/elements/Segment.ts +10 -6
- package/src/utils/intersections.ts +81 -51
- package/ts3.4/cjs/api/PDFDocument.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFButton.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFCheckBox.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFDropdown.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFField.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFOptionList.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFRadioGroup.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFSignature.d.ts +3 -0
- package/ts3.4/cjs/api/form/PDFTextField.d.ts +3 -0
- package/ts3.4/cjs/api/objects.d.ts +61 -0
- package/ts3.4/cjs/api/operators.d.ts +28 -24
- package/ts3.4/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
- package/ts3.4/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
- package/ts3.4/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
- package/ts3.4/cjs/core/PDFContext.d.ts +1 -1
- package/ts3.4/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroField.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
- package/ts3.4/cjs/core/acroform/PDFAcroText.d.ts +3 -0
- package/ts3.4/cjs/core/crypto.d.ts +3 -0
- package/ts3.4/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFArray.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFBool.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFDict.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFHexString.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFName.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFNull.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFNumber.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFObject.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFRawStream.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFRef.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFStream.d.ts +3 -0
- package/ts3.4/cjs/core/objects/PDFString.d.ts +3 -0
- package/ts3.4/cjs/core/structures/PDFCatalog.d.ts +3 -0
- package/ts3.4/cjs/core/structures/PDFContentStream.d.ts +3 -0
- package/ts3.4/cjs/core/structures/PDFObjectStream.d.ts +3 -0
- package/ts3.4/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
- package/ts3.4/cjs/core/structures/PDFPageTree.d.ts +3 -0
- package/ts3.4/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
- package/ts3.4/cjs/core/writers/PDFWriter.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Arc.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Circle.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Ellipse.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/GraphElement.d.ts +2 -0
- package/ts3.4/cjs/utils/elements/Line.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Plot.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Point.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Rectangle.d.ts +3 -0
- package/ts3.4/cjs/utils/elements/Segment.d.ts +3 -0
- package/ts3.4/es/api/PDFDocument.d.ts +3 -0
- package/ts3.4/es/api/form/PDFButton.d.ts +3 -0
- package/ts3.4/es/api/form/PDFCheckBox.d.ts +3 -0
- package/ts3.4/es/api/form/PDFDropdown.d.ts +3 -0
- package/ts3.4/es/api/form/PDFField.d.ts +3 -0
- package/ts3.4/es/api/form/PDFOptionList.d.ts +3 -0
- package/ts3.4/es/api/form/PDFRadioGroup.d.ts +3 -0
- package/ts3.4/es/api/form/PDFSignature.d.ts +3 -0
- package/ts3.4/es/api/form/PDFTextField.d.ts +3 -0
- package/ts3.4/es/api/objects.d.ts +61 -0
- package/ts3.4/es/api/operators.d.ts +28 -24
- package/ts3.4/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
- package/ts3.4/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
- package/ts3.4/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
- package/ts3.4/es/core/PDFContext.d.ts +1 -1
- package/ts3.4/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroField.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroForm.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroListBox.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroSignature.d.ts +3 -0
- package/ts3.4/es/core/acroform/PDFAcroText.d.ts +3 -0
- package/ts3.4/es/core/crypto.d.ts +3 -0
- package/ts3.4/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFArray.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFBool.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFDict.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFHexString.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFInvalidObject.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFName.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFNull.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFNumber.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFObject.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFRawStream.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFRef.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFStream.d.ts +3 -0
- package/ts3.4/es/core/objects/PDFString.d.ts +3 -0
- package/ts3.4/es/core/structures/PDFCatalog.d.ts +3 -0
- package/ts3.4/es/core/structures/PDFContentStream.d.ts +3 -0
- package/ts3.4/es/core/structures/PDFObjectStream.d.ts +3 -0
- package/ts3.4/es/core/structures/PDFPageLeaf.d.ts +3 -0
- package/ts3.4/es/core/structures/PDFPageTree.d.ts +3 -0
- package/ts3.4/es/core/writers/PDFStreamWriter.d.ts +3 -0
- package/ts3.4/es/core/writers/PDFWriter.d.ts +3 -0
- package/ts3.4/es/utils/elements/Arc.d.ts +3 -0
- package/ts3.4/es/utils/elements/Circle.d.ts +3 -0
- package/ts3.4/es/utils/elements/Ellipse.d.ts +3 -0
- package/ts3.4/es/utils/elements/GraphElement.d.ts +2 -0
- package/ts3.4/es/utils/elements/Line.d.ts +3 -0
- package/ts3.4/es/utils/elements/Plot.d.ts +3 -0
- package/ts3.4/es/utils/elements/Point.d.ts +3 -0
- package/ts3.4/es/utils/elements/Rectangle.d.ts +3 -0
- package/ts3.4/es/utils/elements/Segment.d.ts +3 -0
|
@@ -25,6 +25,7 @@ import { IsDigit } from '../syntax/Numeric';
|
|
|
25
25
|
import { waitForTick } from '../../utils';
|
|
26
26
|
import { CipherTransformFactory } from '../crypto';
|
|
27
27
|
import PDFNumber from '../objects/PDFNumber';
|
|
28
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
28
29
|
|
|
29
30
|
class PDFParser extends PDFObjectParser {
|
|
30
31
|
static forBytesWithOptions = (
|
|
@@ -110,8 +111,8 @@ class PDFParser extends PDFObjectParser {
|
|
|
110
111
|
|
|
111
112
|
private maybeRecoverRoot(): void {
|
|
112
113
|
const isValidCatalog = (obj?: PDFObject) =>
|
|
113
|
-
obj
|
|
114
|
-
obj.lookup(PDFName.of('Type')) === PDFName.of('Catalog');
|
|
114
|
+
isPDFInstance(obj, PDFClasses.PDFDict) &&
|
|
115
|
+
(obj as PDFDict).lookup(PDFName.of('Type')) === PDFName.of('Catalog');
|
|
115
116
|
|
|
116
117
|
const catalog = this.context.lookup(this.context.trailerInfo.Root);
|
|
117
118
|
|
|
@@ -188,18 +189,22 @@ class PDFParser extends PDFObjectParser {
|
|
|
188
189
|
this.matchKeyword(Keywords.endobj);
|
|
189
190
|
|
|
190
191
|
if (
|
|
191
|
-
object
|
|
192
|
-
object.dict.lookup(PDFName.of('Type')) ===
|
|
192
|
+
isPDFInstance(object, PDFClasses.PDFRawStream) &&
|
|
193
|
+
(object as PDFRawStream).dict.lookup(PDFName.of('Type')) ===
|
|
194
|
+
PDFName.of('ObjStm')
|
|
193
195
|
) {
|
|
194
196
|
await PDFObjectStreamParser.forStream(
|
|
195
|
-
object,
|
|
197
|
+
object as PDFRawStream,
|
|
196
198
|
this.shouldWaitForTick,
|
|
197
199
|
).parseIntoContext();
|
|
198
200
|
} else if (
|
|
199
|
-
object
|
|
200
|
-
object.dict.lookup(PDFName.of('Type')) ===
|
|
201
|
+
isPDFInstance(object, PDFClasses.PDFRawStream) &&
|
|
202
|
+
(object as PDFRawStream).dict.lookup(PDFName.of('Type')) ===
|
|
203
|
+
PDFName.of('XRef')
|
|
201
204
|
) {
|
|
202
|
-
const entries = PDFXRefStreamParser.forStream(
|
|
205
|
+
const entries = PDFXRefStreamParser.forStream(
|
|
206
|
+
object as PDFRawStream,
|
|
207
|
+
).parseIntoContext();
|
|
203
208
|
if (entries.length) {
|
|
204
209
|
const xref = PDFCrossRefSection.createEmpty();
|
|
205
210
|
for (const entry of entries) {
|
|
@@ -7,6 +7,7 @@ import PDFRawStream from '../objects/PDFRawStream';
|
|
|
7
7
|
import PDFRef from '../objects/PDFRef';
|
|
8
8
|
import ByteStream from './ByteStream';
|
|
9
9
|
import PDFContext from '../PDFContext';
|
|
10
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
10
11
|
|
|
11
12
|
export interface Entry {
|
|
12
13
|
ref: PDFRef;
|
|
@@ -41,11 +42,15 @@ class PDFXRefStreamParser {
|
|
|
41
42
|
const Size = this.dict.lookup(PDFName.of('Size'), PDFNumber);
|
|
42
43
|
|
|
43
44
|
const Index = this.dict.lookup(PDFName.of('Index'));
|
|
44
|
-
if (Index
|
|
45
|
+
if (isPDFInstance(Index, PDFClasses.PDFArray)) {
|
|
45
46
|
this.subsections = [];
|
|
46
|
-
for (let idx = 0, len = Index.size(); idx < len; idx += 2) {
|
|
47
|
-
const firstObjectNumber = Index
|
|
48
|
-
|
|
47
|
+
for (let idx = 0, len = (Index as PDFArray).size(); idx < len; idx += 2) {
|
|
48
|
+
const firstObjectNumber = (Index as PDFArray)
|
|
49
|
+
.lookup(idx + 0, PDFNumber)
|
|
50
|
+
.asNumber();
|
|
51
|
+
const length = (Index as PDFArray)
|
|
52
|
+
.lookup(idx + 1, PDFNumber)
|
|
53
|
+
.asNumber();
|
|
49
54
|
this.subsections.push({ firstObjectNumber, length });
|
|
50
55
|
}
|
|
51
56
|
} else {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import { UnexpectedObjectTypeError, UnsupportedEncodingError } from '../errors';
|
|
2
3
|
import PDFArray from '../objects/PDFArray';
|
|
3
4
|
import PDFDict from '../objects/PDFDict';
|
|
@@ -22,10 +23,10 @@ const decodeStream = (
|
|
|
22
23
|
}
|
|
23
24
|
if (encoding === PDFName.of('LZWDecode')) {
|
|
24
25
|
let earlyChange = 1;
|
|
25
|
-
if (params
|
|
26
|
-
const EarlyChange = params.lookup(PDFName.of('EarlyChange'));
|
|
27
|
-
if (EarlyChange
|
|
28
|
-
earlyChange = EarlyChange.asNumber();
|
|
26
|
+
if (isPDFInstance(params, PDFClasses.PDFDict)) {
|
|
27
|
+
const EarlyChange = (params as PDFDict).lookup(PDFName.of('EarlyChange'));
|
|
28
|
+
if (isPDFInstance(EarlyChange, PDFClasses.PDFNumber)) {
|
|
29
|
+
earlyChange = (EarlyChange as PDFNumber).asNumber();
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
return new LZWStream(stream, undefined, earlyChange as 0 | 1);
|
|
@@ -56,17 +57,17 @@ export const decodePDFRawStream = ({
|
|
|
56
57
|
const Filter = dict.lookup(PDFName.of('Filter'));
|
|
57
58
|
const DecodeParms = dict.lookup(PDFName.of('DecodeParms'));
|
|
58
59
|
|
|
59
|
-
if (Filter
|
|
60
|
+
if (isPDFInstance(Filter, PDFClasses.PDFName)) {
|
|
60
61
|
stream = decodeStream(
|
|
61
62
|
stream,
|
|
62
|
-
Filter,
|
|
63
|
+
Filter as PDFName,
|
|
63
64
|
DecodeParms as PDFDict | typeof PDFNull | undefined,
|
|
64
65
|
);
|
|
65
|
-
} else if (Filter
|
|
66
|
-
for (let idx = 0, len = Filter.size(); idx < len; idx++) {
|
|
66
|
+
} else if (isPDFInstance(Filter, PDFClasses.PDFArray)) {
|
|
67
|
+
for (let idx = 0, len = (Filter as PDFArray).size(); idx < len; idx++) {
|
|
67
68
|
stream = decodeStream(
|
|
68
69
|
stream,
|
|
69
|
-
Filter.lookup(idx, PDFName),
|
|
70
|
+
(Filter as PDFArray).lookup(idx, PDFName),
|
|
70
71
|
DecodeParms && (DecodeParms as PDFArray).lookupMaybe(idx, PDFDict),
|
|
71
72
|
);
|
|
72
73
|
}
|
|
@@ -6,8 +6,13 @@ import PDFPageTree from './PDFPageTree';
|
|
|
6
6
|
import { PDFAcroForm } from '../acroform';
|
|
7
7
|
import ViewerPreferences from '../interactive/ViewerPreferences';
|
|
8
8
|
import PDFArray from '../objects/PDFArray';
|
|
9
|
+
import { PDFClasses } from '../../api/objects';
|
|
9
10
|
|
|
10
11
|
class PDFCatalog extends PDFDict {
|
|
12
|
+
static className = () => PDFClasses.PDFCatalog;
|
|
13
|
+
myClass(): PDFClasses {
|
|
14
|
+
return PDFClasses.PDFCatalog;
|
|
15
|
+
}
|
|
11
16
|
static withContextAndPages = (
|
|
12
17
|
context: PDFContext,
|
|
13
18
|
pages: PDFPageTree | PDFRef,
|
|
@@ -3,8 +3,13 @@ import PDFOperator from '../operators/PDFOperator';
|
|
|
3
3
|
import PDFContext from '../PDFContext';
|
|
4
4
|
import PDFFlateStream from './PDFFlateStream';
|
|
5
5
|
import CharCodes from '../syntax/CharCodes';
|
|
6
|
+
import { PDFClasses } from '../../api/objects';
|
|
6
7
|
|
|
7
8
|
class PDFContentStream extends PDFFlateStream {
|
|
9
|
+
static className = () => PDFClasses.PDFContentStream;
|
|
10
|
+
myClass(): PDFClasses {
|
|
11
|
+
return PDFClasses.PDFContentStream;
|
|
12
|
+
}
|
|
8
13
|
static of = (dict: PDFDict, operators: PDFOperator[], encode = true) =>
|
|
9
14
|
new PDFContentStream(dict, operators, encode);
|
|
10
15
|
|
|
@@ -6,10 +6,15 @@ import PDFContext from '../PDFContext';
|
|
|
6
6
|
import PDFFlateStream from './PDFFlateStream';
|
|
7
7
|
import CharCodes from '../syntax/CharCodes';
|
|
8
8
|
import { copyStringIntoBuffer, last } from '../../utils';
|
|
9
|
+
import { PDFClasses } from '../../api/objects';
|
|
9
10
|
|
|
10
11
|
export type IndirectObject = [PDFRef, PDFObject];
|
|
11
12
|
|
|
12
13
|
class PDFObjectStream extends PDFFlateStream {
|
|
14
|
+
static className = () => PDFClasses.PDFObjectStream;
|
|
15
|
+
myClass(): PDFClasses {
|
|
16
|
+
return PDFClasses.PDFObjectStream;
|
|
17
|
+
}
|
|
13
18
|
static withContextAndObjects = (
|
|
14
19
|
context: PDFContext,
|
|
15
20
|
objects: IndirectObject[],
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import PDFArray from '../objects/PDFArray';
|
|
2
3
|
import PDFDict, { DictMap } from '../objects/PDFDict';
|
|
3
4
|
import PDFName from '../objects/PDFName';
|
|
@@ -9,6 +10,10 @@ import PDFContext from '../PDFContext';
|
|
|
9
10
|
import PDFPageTree from './PDFPageTree';
|
|
10
11
|
|
|
11
12
|
class PDFPageLeaf extends PDFDict {
|
|
13
|
+
static className = () => PDFClasses.PDFPageLeaf;
|
|
14
|
+
myClass(): PDFClasses {
|
|
15
|
+
return PDFClasses.PDFPageLeaf;
|
|
16
|
+
}
|
|
12
17
|
static readonly InheritableEntries = [
|
|
13
18
|
'Resources',
|
|
14
19
|
'MediaBox',
|
|
@@ -124,9 +129,9 @@ class PDFPageLeaf extends PDFDict {
|
|
|
124
129
|
|
|
125
130
|
wrapContentStreams(startStream: PDFRef, endStream: PDFRef): boolean {
|
|
126
131
|
const Contents = this.Contents();
|
|
127
|
-
if (Contents
|
|
128
|
-
Contents.insert(0, startStream);
|
|
129
|
-
Contents.push(endStream);
|
|
132
|
+
if (isPDFInstance(Contents, PDFClasses.PDFArray)) {
|
|
133
|
+
(Contents as PDFArray).insert(0, startStream);
|
|
134
|
+
(Contents as PDFArray).push(endStream);
|
|
130
135
|
return true;
|
|
131
136
|
}
|
|
132
137
|
return false;
|
|
@@ -208,7 +213,7 @@ class PDFPageLeaf extends PDFDict {
|
|
|
208
213
|
|
|
209
214
|
const contentsRef = this.get(PDFName.Contents);
|
|
210
215
|
const contents = this.context.lookup(contentsRef);
|
|
211
|
-
if (contents
|
|
216
|
+
if (isPDFInstance(contents, PDFClasses.PDFStream)) {
|
|
212
217
|
this.set(PDFName.Contents, context.obj([contentsRef]));
|
|
213
218
|
}
|
|
214
219
|
|
|
@@ -6,10 +6,16 @@ import PDFRef from '../objects/PDFRef';
|
|
|
6
6
|
import PDFContext from '../PDFContext';
|
|
7
7
|
import PDFPageLeaf from './PDFPageLeaf';
|
|
8
8
|
import { InvalidTargetIndexError, CorruptPageTreeError } from '../errors';
|
|
9
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
9
10
|
|
|
10
11
|
export type TreeNode = PDFPageTree | PDFPageLeaf;
|
|
11
12
|
|
|
12
13
|
class PDFPageTree extends PDFDict {
|
|
14
|
+
static className = () => PDFClasses.PDFPageTree;
|
|
15
|
+
myClass(): PDFClasses {
|
|
16
|
+
return PDFClasses.PDFPageTree;
|
|
17
|
+
}
|
|
18
|
+
|
|
13
19
|
static withContext = (context: PDFContext, parent?: PDFRef) => {
|
|
14
20
|
const dict = new Map();
|
|
15
21
|
dict.set(PDFName.of('Type'), PDFName.of('Pages'));
|
|
@@ -72,19 +78,24 @@ class PDFPageTree extends PDFDict {
|
|
|
72
78
|
const kidRef = Kids.get(idx) as PDFRef;
|
|
73
79
|
const kid = this.context.lookup(kidRef);
|
|
74
80
|
|
|
75
|
-
if (kid
|
|
76
|
-
if (
|
|
81
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageTree)) {
|
|
82
|
+
if (
|
|
83
|
+
(kid as PDFPageTree).Count().asNumber() > leafsRemainingUntilTarget
|
|
84
|
+
) {
|
|
77
85
|
// Dig in
|
|
78
86
|
return (
|
|
79
|
-
kid.insertLeafNode(
|
|
87
|
+
(kid as PDFPageTree).insertLeafNode(
|
|
88
|
+
leafRef,
|
|
89
|
+
leafsRemainingUntilTarget,
|
|
90
|
+
) || kidRef
|
|
80
91
|
);
|
|
81
92
|
} else {
|
|
82
93
|
// Move on
|
|
83
|
-
leafsRemainingUntilTarget -= kid.Count().asNumber();
|
|
94
|
+
leafsRemainingUntilTarget -= (kid as PDFPageTree).Count().asNumber();
|
|
84
95
|
}
|
|
85
96
|
}
|
|
86
97
|
|
|
87
|
-
if (kid
|
|
98
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageLeaf)) {
|
|
88
99
|
// Move on
|
|
89
100
|
leafsRemainingUntilTarget -= 1;
|
|
90
101
|
}
|
|
@@ -121,19 +132,22 @@ class PDFPageTree extends PDFDict {
|
|
|
121
132
|
const kidRef = Kids.get(idx) as PDFRef;
|
|
122
133
|
const kid = this.context.lookup(kidRef);
|
|
123
134
|
|
|
124
|
-
if (kid
|
|
125
|
-
if (
|
|
135
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageTree)) {
|
|
136
|
+
if (
|
|
137
|
+
(kid as PDFPageTree).Count().asNumber() > leafsRemainingUntilTarget
|
|
138
|
+
) {
|
|
126
139
|
// Dig in
|
|
127
|
-
kid.removeLeafNode(leafsRemainingUntilTarget, prune);
|
|
128
|
-
if (prune && kid.Kids().size() === 0)
|
|
140
|
+
(kid as PDFPageTree).removeLeafNode(leafsRemainingUntilTarget, prune);
|
|
141
|
+
if (prune && (kid as PDFPageTree).Kids().size() === 0)
|
|
142
|
+
Kids.remove(idx);
|
|
129
143
|
return;
|
|
130
144
|
} else {
|
|
131
145
|
// Move on
|
|
132
|
-
leafsRemainingUntilTarget -= kid.Count().asNumber();
|
|
146
|
+
leafsRemainingUntilTarget -= (kid as PDFPageTree).Count().asNumber();
|
|
133
147
|
}
|
|
134
148
|
}
|
|
135
149
|
|
|
136
|
-
if (kid
|
|
150
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageLeaf)) {
|
|
137
151
|
if (leafsRemainingUntilTarget === 0) {
|
|
138
152
|
// Remove page and return
|
|
139
153
|
this.removeKid(idx);
|
|
@@ -161,7 +175,8 @@ class PDFPageTree extends PDFDict {
|
|
|
161
175
|
for (let idx = 0, len = Kids.size(); idx < len; idx++) {
|
|
162
176
|
const kidRef = Kids.get(idx) as PDFRef;
|
|
163
177
|
const kid = this.context.lookup(kidRef) as TreeNode;
|
|
164
|
-
if (kid
|
|
178
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageTree))
|
|
179
|
+
(kid as PDFPageTree).traverse(visitor);
|
|
165
180
|
visitor(kid, kidRef);
|
|
166
181
|
}
|
|
167
182
|
}
|
|
@@ -181,7 +196,7 @@ class PDFPageTree extends PDFDict {
|
|
|
181
196
|
const Kids = this.Kids();
|
|
182
197
|
|
|
183
198
|
const kid = Kids.lookup(kidIdx);
|
|
184
|
-
if (kid
|
|
199
|
+
if (isPDFInstance(kid, PDFClasses.PDFPageLeaf)) {
|
|
185
200
|
this.ascend((node) => {
|
|
186
201
|
const newCount = node.Count().asNumber() - 1;
|
|
187
202
|
node.set(PDFName.of('Count'), PDFNumber.of(newCount));
|
|
@@ -2,23 +2,23 @@ import { defaultDocumentSnapshot } from '../../api/snapshot';
|
|
|
2
2
|
import type { DocumentSnapshot } from '../../api/snapshot';
|
|
3
3
|
import PDFHeader from '../document/PDFHeader';
|
|
4
4
|
import PDFTrailer from '../document/PDFTrailer';
|
|
5
|
-
import PDFInvalidObject from '../objects/PDFInvalidObject';
|
|
6
5
|
import PDFName from '../objects/PDFName';
|
|
7
6
|
import PDFNumber from '../objects/PDFNumber';
|
|
8
7
|
import PDFObject from '../objects/PDFObject';
|
|
9
8
|
import PDFRef from '../objects/PDFRef';
|
|
10
|
-
import PDFStream from '../objects/PDFStream';
|
|
11
9
|
import PDFContext from '../PDFContext';
|
|
12
10
|
import PDFCrossRefStream from '../structures/PDFCrossRefStream';
|
|
13
11
|
import PDFObjectStream from '../structures/PDFObjectStream';
|
|
14
12
|
import PDFWriter from '../writers/PDFWriter';
|
|
15
13
|
import { last, waitForTick } from '../../utils';
|
|
16
14
|
import PDFDict from '../objects/PDFDict';
|
|
17
|
-
import
|
|
18
|
-
import PDFPageTree from '../structures/PDFPageTree';
|
|
19
|
-
import PDFPageLeaf from '../structures/PDFPageLeaf';
|
|
15
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
20
16
|
|
|
21
17
|
class PDFStreamWriter extends PDFWriter {
|
|
18
|
+
static className = () => PDFClasses.PDFStreamWriter;
|
|
19
|
+
myClass(): PDFClasses {
|
|
20
|
+
return PDFClasses.PDFStreamWriter;
|
|
21
|
+
}
|
|
22
22
|
static forContext = (
|
|
23
23
|
context: PDFContext,
|
|
24
24
|
objectsPerTick: number,
|
|
@@ -97,13 +97,13 @@ class PDFStreamWriter extends PDFWriter {
|
|
|
97
97
|
|
|
98
98
|
const shouldNotCompress =
|
|
99
99
|
ref === this.context.trailerInfo.Encrypt ||
|
|
100
|
-
object
|
|
101
|
-
object
|
|
102
|
-
object
|
|
103
|
-
object
|
|
104
|
-
object
|
|
100
|
+
isPDFInstance(object, PDFClasses.PDFStream) ||
|
|
101
|
+
isPDFInstance(object, PDFClasses.PDFInvalidObject) ||
|
|
102
|
+
isPDFInstance(object, PDFClasses.PDFCatalog) ||
|
|
103
|
+
isPDFInstance(object, PDFClasses.PDFPageTree) ||
|
|
104
|
+
isPDFInstance(object, PDFClasses.PDFPageLeaf) ||
|
|
105
105
|
ref.generationNumber !== 0 ||
|
|
106
|
-
(object
|
|
106
|
+
(isPDFInstance(object, PDFClasses.PDFDict) &&
|
|
107
107
|
(object as PDFDict).lookup(PDFName.of('Type')) === PDFName.of('Sig'));
|
|
108
108
|
|
|
109
109
|
if (shouldNotCompress) {
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
DefaultDocumentSnapshot,
|
|
3
|
-
defaultDocumentSnapshot,
|
|
4
|
-
} from '../../api/snapshot';
|
|
1
|
+
import { defaultDocumentSnapshot } from '../../api/snapshot';
|
|
5
2
|
import type { DocumentSnapshot } from '../../api/snapshot';
|
|
6
3
|
import PDFCrossRefSection from '../document/PDFCrossRefSection';
|
|
7
4
|
import PDFHeader from '../document/PDFHeader';
|
|
@@ -19,6 +16,7 @@ import PDFSecurity from '../security/PDFSecurity';
|
|
|
19
16
|
import PDFStream from '../objects/PDFStream';
|
|
20
17
|
import PDFName from '../objects/PDFName';
|
|
21
18
|
import PDFRawStream from '../objects/PDFRawStream';
|
|
19
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
22
20
|
|
|
23
21
|
export interface SerializationInfo {
|
|
24
22
|
size: number;
|
|
@@ -30,6 +28,10 @@ export interface SerializationInfo {
|
|
|
30
28
|
}
|
|
31
29
|
|
|
32
30
|
class PDFWriter {
|
|
31
|
+
static className = () => PDFClasses.PDFWriter;
|
|
32
|
+
myClass(): PDFClasses {
|
|
33
|
+
return PDFClasses.PDFWriter;
|
|
34
|
+
}
|
|
33
35
|
static forContext = (context: PDFContext, objectsPerTick: number) =>
|
|
34
36
|
new PDFWriter(context, objectsPerTick, defaultDocumentSnapshot);
|
|
35
37
|
|
|
@@ -96,8 +98,9 @@ class PDFWriter {
|
|
|
96
98
|
if (objects[idx][0].objectNumber < checkWatermark) break;
|
|
97
99
|
const object = objects[idx][1];
|
|
98
100
|
if (
|
|
99
|
-
object
|
|
100
|
-
object.dict.lookup(PDFName.of('Type')) ===
|
|
101
|
+
isPDFInstance(object, PDFClasses.PDFRawStream) &&
|
|
102
|
+
(object as PDFRawStream).dict.lookup(PDFName.of('Type')) ===
|
|
103
|
+
PDFName.of('XRef')
|
|
101
104
|
) {
|
|
102
105
|
this._lastXRefObjectNumber = objects[idx][0].objectNumber;
|
|
103
106
|
break;
|
|
@@ -112,7 +115,10 @@ class PDFWriter {
|
|
|
112
115
|
}
|
|
113
116
|
|
|
114
117
|
async serializeToBuffer(): Promise<Uint8Array> {
|
|
115
|
-
const incremental = !(
|
|
118
|
+
const incremental = !isPDFInstance(
|
|
119
|
+
this.snapshot,
|
|
120
|
+
PDFClasses.DefaultDocumentSnapshot,
|
|
121
|
+
);
|
|
116
122
|
const { size, header, indirectObjects, xref, trailerDict, trailer } =
|
|
117
123
|
await this.computeBufferSize(incremental);
|
|
118
124
|
|
|
@@ -157,8 +163,9 @@ class PDFWriter {
|
|
|
157
163
|
buffer[offset++] = CharCodes.Newline;
|
|
158
164
|
buffer[offset++] = CharCodes.Newline;
|
|
159
165
|
|
|
160
|
-
const n =
|
|
161
|
-
object
|
|
166
|
+
const n = isPDFInstance(object, PDFClasses.PDFObjectStream)
|
|
167
|
+
? (object as PDFObjectStream).getObjectsCount()
|
|
168
|
+
: 1;
|
|
162
169
|
if (this.shouldWaitForTick(n)) await waitForTick();
|
|
163
170
|
}
|
|
164
171
|
|
|
@@ -264,14 +271,14 @@ class PDFWriter {
|
|
|
264
271
|
}
|
|
265
272
|
|
|
266
273
|
protected encrypt(ref: PDFRef, object: PDFObject, security: PDFSecurity) {
|
|
267
|
-
if (object
|
|
274
|
+
if (isPDFInstance(object, PDFClasses.PDFStream)) {
|
|
268
275
|
const encryptFn = security.getEncryptFn(
|
|
269
276
|
ref.objectNumber,
|
|
270
277
|
ref.generationNumber,
|
|
271
278
|
);
|
|
272
|
-
const unencryptedContents = object.getContents();
|
|
279
|
+
const unencryptedContents = (object as PDFStream).getContents();
|
|
273
280
|
const encryptedContents = encryptFn(unencryptedContents);
|
|
274
|
-
object.updateContents(encryptedContents);
|
|
281
|
+
(object as PDFStream).updateContents(encryptedContents);
|
|
275
282
|
}
|
|
276
283
|
}
|
|
277
284
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import { angleABC, distance, distanceCoords, rotate, vector } from '../maths';
|
|
2
3
|
|
|
3
4
|
import Circle from './Circle';
|
|
@@ -5,6 +6,10 @@ import GraphElement from './GraphElement';
|
|
|
5
6
|
import Point from './Point';
|
|
6
7
|
|
|
7
8
|
export default class Arc extends GraphElement {
|
|
9
|
+
static className = () => PDFClasses.Arc;
|
|
10
|
+
myClass(): PDFClasses {
|
|
11
|
+
return PDFClasses.Arc;
|
|
12
|
+
}
|
|
8
13
|
O: Point;
|
|
9
14
|
A: Point;
|
|
10
15
|
B: Point;
|
|
@@ -51,13 +56,13 @@ export default class Arc extends GraphElement {
|
|
|
51
56
|
}
|
|
52
57
|
|
|
53
58
|
isEqual(element: GraphElement): boolean {
|
|
54
|
-
if (!(element
|
|
59
|
+
if (!isPDFInstance(element, PDFClasses.Arc)) return false;
|
|
55
60
|
const dest = this.destination();
|
|
56
61
|
const o = this.origin();
|
|
57
|
-
const eDest = element.destination();
|
|
58
|
-
const eO = element.origin();
|
|
62
|
+
const eDest = (element as Arc).destination();
|
|
63
|
+
const eO = (element as Arc).origin();
|
|
59
64
|
return (
|
|
60
|
-
this.getCircle().isEqual(element.getCircle()) &&
|
|
65
|
+
this.getCircle().isEqual((element as Arc).getCircle()) &&
|
|
61
66
|
((dest.isEqual(eDest) && o.isEqual(eO)) ||
|
|
62
67
|
(dest.isEqual(eO) && o.isEqual(eDest)))
|
|
63
68
|
);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import {
|
|
2
3
|
distance,
|
|
3
4
|
distanceCoords,
|
|
@@ -11,6 +12,10 @@ import {
|
|
|
11
12
|
import GraphElement from './GraphElement';
|
|
12
13
|
import Point from './Point';
|
|
13
14
|
export default class Circle extends GraphElement {
|
|
15
|
+
static className = () => PDFClasses.Circle;
|
|
16
|
+
myClass(): PDFClasses {
|
|
17
|
+
return PDFClasses.Circle;
|
|
18
|
+
}
|
|
14
19
|
O: Point;
|
|
15
20
|
r: number;
|
|
16
21
|
|
|
@@ -35,9 +40,9 @@ export default class Circle extends GraphElement {
|
|
|
35
40
|
|
|
36
41
|
isEqual(element: GraphElement): boolean {
|
|
37
42
|
return (
|
|
38
|
-
element
|
|
39
|
-
this.center().isEqual(element.center()) &&
|
|
40
|
-
isEqual(this.ray(), element.ray())
|
|
43
|
+
isPDFInstance(element, PDFClasses.Circle) &&
|
|
44
|
+
this.center().isEqual((element as Circle).center()) &&
|
|
45
|
+
isEqual(this.ray(), (element as Circle).ray())
|
|
41
46
|
);
|
|
42
47
|
}
|
|
43
48
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import { Size } from '../../types';
|
|
2
3
|
import {
|
|
3
4
|
angle,
|
|
@@ -15,6 +16,10 @@ import Point from './Point';
|
|
|
15
16
|
import Segment from './Segment';
|
|
16
17
|
|
|
17
18
|
export default class Ellipse extends GraphElement {
|
|
19
|
+
static className = () => PDFClasses.Ellipse;
|
|
20
|
+
myClass(): PDFClasses {
|
|
21
|
+
return PDFClasses.Ellipse;
|
|
22
|
+
}
|
|
18
23
|
A: Point;
|
|
19
24
|
B: Point;
|
|
20
25
|
C: Point;
|
|
@@ -62,13 +67,13 @@ export default class Ellipse extends GraphElement {
|
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
isEqual(element: GraphElement): boolean {
|
|
65
|
-
if (!(element
|
|
70
|
+
if (!isPDFInstance(element, PDFClasses.Ellipse)) return false;
|
|
66
71
|
const a = this.a();
|
|
67
72
|
const b = this.b();
|
|
68
73
|
const rotation = this.rotation();
|
|
69
|
-
const eltA = element.a();
|
|
70
|
-
const eltB = element.b();
|
|
71
|
-
const eltRotation = element.rotation();
|
|
74
|
+
const eltA = (element as Ellipse).a();
|
|
75
|
+
const eltB = (element as Ellipse).b();
|
|
76
|
+
const eltRotation = (element as Ellipse).rotation();
|
|
72
77
|
// If the main axis is the same on both ellipse
|
|
73
78
|
if (eltA < eltB === a < b) {
|
|
74
79
|
// The rotation is equivalent module PI as the element is symetrical
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import { PDFClasses } from '../../api/objects';
|
|
1
2
|
import { distance } from '../maths';
|
|
2
3
|
|
|
3
4
|
import Point from './Point';
|
|
4
5
|
|
|
5
6
|
export default abstract class GraphElement {
|
|
7
|
+
abstract myClass(): PDFClasses;
|
|
8
|
+
|
|
6
9
|
abstract isEqual(element: GraphElement): boolean;
|
|
7
10
|
|
|
8
11
|
abstract orthoProjection(P: Point): Point;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import { Coordinates } from '../../types';
|
|
2
3
|
import { intersectionLine } from '../intersections';
|
|
3
4
|
import { isColinear, isEqual, orthogonal, vector } from '../maths';
|
|
@@ -6,6 +7,10 @@ import GraphElement from './GraphElement';
|
|
|
6
7
|
import Point from './Point';
|
|
7
8
|
|
|
8
9
|
export default class Line extends GraphElement {
|
|
10
|
+
static className = () => PDFClasses.Line;
|
|
11
|
+
myClass(): PDFClasses {
|
|
12
|
+
return PDFClasses.Line;
|
|
13
|
+
}
|
|
9
14
|
origin(): Point {
|
|
10
15
|
return this.A;
|
|
11
16
|
}
|
|
@@ -46,12 +51,15 @@ export default class Line extends GraphElement {
|
|
|
46
51
|
isEqual(element: GraphElement): boolean {
|
|
47
52
|
const vect = this.dirVect();
|
|
48
53
|
return (
|
|
49
|
-
element
|
|
50
|
-
isColinear(vect, element.dirVect()) &&
|
|
54
|
+
isPDFInstance(element, PDFClasses.Line) &&
|
|
55
|
+
isColinear(vect, (element as Line).dirVect()) &&
|
|
51
56
|
(isEqual(vect.x, 0)
|
|
52
57
|
? // We need to take care of the case of the vertical line
|
|
53
|
-
isEqual(
|
|
54
|
-
|
|
58
|
+
isEqual(
|
|
59
|
+
this.origin().toCoords().x,
|
|
60
|
+
(element as Line).origin().toCoords().x,
|
|
61
|
+
)
|
|
62
|
+
: isEqual(this.b(), (element as Line).b()))
|
|
55
63
|
);
|
|
56
64
|
}
|
|
57
65
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import { Coordinates } from '../../types';
|
|
2
3
|
import { plus } from '../maths';
|
|
3
4
|
|
|
@@ -5,6 +6,10 @@ import GraphElement from './GraphElement';
|
|
|
5
6
|
import Point from './Point';
|
|
6
7
|
import Segment from './Segment';
|
|
7
8
|
export default class Plot extends GraphElement {
|
|
9
|
+
static className = () => PDFClasses.Plot;
|
|
10
|
+
myClass(): PDFClasses {
|
|
11
|
+
return PDFClasses.Plot;
|
|
12
|
+
}
|
|
8
13
|
points: Coordinates[];
|
|
9
14
|
|
|
10
15
|
constructor(points: Coordinates[] = []) {
|
|
@@ -21,9 +26,11 @@ export default class Plot extends GraphElement {
|
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
isEqual(element: GraphElement): boolean {
|
|
24
|
-
if (!(element
|
|
29
|
+
if (!isPDFInstance(element, PDFClasses.Plot)) return false;
|
|
25
30
|
const points = this.getPoints().map((coord) => new Point(coord));
|
|
26
|
-
const points2 = element
|
|
31
|
+
const points2 = (element as Plot)
|
|
32
|
+
.getPoints()
|
|
33
|
+
.map((coord) => new Point(coord));
|
|
27
34
|
return (
|
|
28
35
|
points.every((point, i) => point.isEqual(points2[i])) ||
|
|
29
36
|
points.reverse().every((point, i) => point.isEqual(points2[i]))
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import type { Coordinates } from '../../types';
|
|
2
3
|
|
|
3
4
|
import { isEqual, plus } from '../maths';
|
|
4
5
|
import GraphElement from './GraphElement';
|
|
5
6
|
|
|
6
7
|
export default class Point extends GraphElement {
|
|
8
|
+
static className = () => PDFClasses.Point;
|
|
9
|
+
myClass(): PDFClasses {
|
|
10
|
+
return PDFClasses.Point;
|
|
11
|
+
}
|
|
7
12
|
static type = 'PointFixed';
|
|
8
13
|
|
|
9
14
|
x: number;
|
|
@@ -20,9 +25,9 @@ export default class Point extends GraphElement {
|
|
|
20
25
|
}
|
|
21
26
|
|
|
22
27
|
isEqual(element: GraphElement): boolean {
|
|
23
|
-
if (!(element
|
|
28
|
+
if (!isPDFInstance(element, PDFClasses.Point)) return false;
|
|
24
29
|
const A = this.toCoords();
|
|
25
|
-
const B = element.toCoords();
|
|
30
|
+
const B = (element as Point).toCoords();
|
|
26
31
|
return isEqual(A.x, B.x) && isEqual(A.y, B.y);
|
|
27
32
|
}
|
|
28
33
|
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import { isPDFInstance, PDFClasses } from '../../api/objects';
|
|
1
2
|
import GraphElement from './GraphElement';
|
|
2
3
|
import Point from './Point';
|
|
3
4
|
import Segment from './Segment';
|
|
4
5
|
|
|
5
6
|
export default class Rectangle extends GraphElement {
|
|
7
|
+
static className = () => PDFClasses.Rectangle;
|
|
8
|
+
myClass(): PDFClasses {
|
|
9
|
+
return PDFClasses.Rectangle;
|
|
10
|
+
}
|
|
6
11
|
static type = 'Rectangle';
|
|
7
12
|
start: Point;
|
|
8
13
|
end: Point;
|
|
@@ -48,9 +53,9 @@ export default class Rectangle extends GraphElement {
|
|
|
48
53
|
|
|
49
54
|
isEqual(element: GraphElement): boolean {
|
|
50
55
|
return (
|
|
51
|
-
element
|
|
52
|
-
this.getStart().isEqual(element.getStart()) &&
|
|
53
|
-
this.getEnd().isEqual(element.getEnd())
|
|
56
|
+
isPDFInstance(element, PDFClasses.Rectangle) &&
|
|
57
|
+
this.getStart().isEqual((element as Rectangle).getStart()) &&
|
|
58
|
+
this.getEnd().isEqual((element as Rectangle).getEnd())
|
|
54
59
|
);
|
|
55
60
|
}
|
|
56
61
|
|