@pdfme/pdf-lib 6.0.3-dev.0 → 6.0.4-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{src/api/Embeddable.ts → dist/api/Embeddable.d.ts} +1 -1
- package/dist/api/PDFDocument.d.ts +778 -0
- package/dist/api/PDFDocumentOptions.d.ts +38 -0
- package/dist/api/PDFEmbeddedFile.d.ts +38 -0
- package/dist/api/PDFEmbeddedPage.d.ts +73 -0
- package/dist/api/PDFFont.d.ts +94 -0
- package/dist/api/PDFImage.d.ts +95 -0
- package/dist/api/PDFJavaScript.d.ts +38 -0
- package/dist/api/PDFPage.d.ts +910 -0
- package/dist/api/PDFPageOptions.d.ts +172 -0
- package/dist/api/StandardFonts.d.ts +16 -0
- package/dist/api/colors.d.ts +34 -0
- package/dist/api/errors.d.ts +42 -0
- package/dist/api/form/PDFButton.d.ts +137 -0
- package/dist/api/form/PDFCheckBox.d.ts +142 -0
- package/dist/api/form/PDFDropdown.d.ts +402 -0
- package/dist/api/form/PDFField.d.ts +203 -0
- package/dist/api/form/PDFForm.d.ts +411 -0
- package/dist/api/form/PDFOptionList.d.ts +335 -0
- package/dist/api/form/PDFRadioGroup.d.ts +252 -0
- package/dist/api/form/PDFSignature.d.ts +29 -0
- package/dist/api/form/PDFTextField.d.ts +537 -0
- package/dist/api/form/appearances.d.ts +41 -0
- package/dist/api/image/alignment.d.ts +5 -0
- package/dist/api/objects.d.ts +4 -0
- package/dist/api/operations.d.ts +226 -0
- package/dist/api/operators.d.ts +90 -0
- package/dist/api/rotations.d.ts +38 -0
- package/dist/api/sizes.d.ts +52 -0
- package/dist/api/svg.d.ts +70 -0
- package/dist/api/svgPath.d.ts +2 -0
- package/dist/api/text/alignment.d.ts +5 -0
- package/dist/api/text/layout.d.ts +54 -0
- package/dist/core/PDFContext.d.ts +84 -0
- package/dist/core/PDFObjectCopier.d.ts +37 -0
- package/dist/core/acroform/PDFAcroButton.d.ts +21 -0
- package/dist/core/acroform/PDFAcroCheckBox.d.ts +13 -0
- package/dist/core/acroform/PDFAcroChoice.d.ts +20 -0
- package/dist/core/acroform/PDFAcroComboBox.d.ts +9 -0
- package/dist/core/acroform/PDFAcroField.d.ts +36 -0
- package/dist/core/acroform/PDFAcroForm.d.ts +20 -0
- package/dist/core/acroform/PDFAcroListBox.d.ts +9 -0
- package/dist/core/acroform/PDFAcroNonTerminal.d.ts +13 -0
- package/dist/core/acroform/PDFAcroPushButton.d.ts +9 -0
- package/dist/core/acroform/PDFAcroRadioButton.d.ts +13 -0
- package/{src/core/acroform/PDFAcroSignature.ts → dist/core/acroform/PDFAcroSignature.d.ts} +2 -4
- package/dist/core/acroform/PDFAcroTerminal.d.ts +16 -0
- package/dist/core/acroform/PDFAcroText.d.ts +22 -0
- package/dist/core/acroform/flags.d.ts +141 -0
- package/dist/core/acroform/utils.d.ts +6 -0
- package/dist/core/annotation/AppearanceCharacteristics.d.ts +33 -0
- package/dist/core/annotation/BorderStyle.d.ts +11 -0
- package/dist/core/annotation/PDFAnnotation.d.ts +51 -0
- package/dist/core/annotation/PDFWidgetAnnotation.d.ts +26 -0
- package/dist/core/annotation/flags.d.ts +79 -0
- package/dist/core/crypto.d.ts +95 -0
- package/dist/core/document/PDFCrossRefSection.d.ts +27 -0
- package/dist/core/document/PDFHeader.d.ts +10 -0
- package/dist/core/document/PDFTrailer.d.ts +9 -0
- package/dist/core/document/PDFTrailerDict.d.ts +10 -0
- package/dist/core/embedders/CMap.d.ts +3 -0
- package/dist/core/embedders/CustomFontEmbedder.d.ts +44 -0
- package/dist/core/embedders/CustomFontSubsetEmbedder.d.ts +20 -0
- package/dist/core/embedders/FileEmbedder.d.ts +33 -0
- package/dist/core/embedders/FontFlags.d.ts +13 -0
- package/dist/core/embedders/JavaScriptEmbedder.d.ts +10 -0
- package/dist/core/embedders/JpegEmbedder.d.ts +23 -0
- package/dist/core/embedders/PDFPageEmbedder.d.ts +37 -0
- package/dist/core/embedders/PngEmbedder.d.ts +19 -0
- package/dist/core/embedders/StandardFontEmbedder.d.ts +36 -0
- package/dist/core/errors.d.ts +94 -0
- package/{src/core/index.ts → dist/core/index.d.ts} +1 -17
- package/dist/core/interactive/ViewerPreferences.d.ts +347 -0
- package/dist/core/objects/PDFArray.d.ts +63 -0
- package/dist/core/objects/PDFBool.d.ts +13 -0
- package/dist/core/objects/PDFDict.d.ts +62 -0
- package/dist/core/objects/PDFHexString.d.ts +16 -0
- package/dist/core/objects/PDFInvalidObject.d.ts +11 -0
- package/dist/core/objects/PDFName.d.ts +41 -0
- package/dist/core/objects/PDFNull.d.ts +10 -0
- package/dist/core/objects/PDFNumber.d.ts +15 -0
- package/dist/core/objects/PDFObject.d.ts +8 -0
- package/dist/core/objects/PDFRawStream.d.ts +16 -0
- package/dist/core/objects/PDFRef.d.ts +13 -0
- package/dist/core/objects/PDFStream.d.ts +16 -0
- package/dist/core/objects/PDFString.d.ts +16 -0
- package/dist/core/operators/PDFOperator.d.ts +19 -0
- package/dist/core/operators/PDFOperatorNames.d.ts +76 -0
- package/dist/core/parser/BaseParser.d.ts +14 -0
- package/dist/core/parser/ByteStream.d.ts +26 -0
- package/dist/core/parser/PDFObjectParser.d.ts +31 -0
- package/dist/core/parser/PDFObjectStreamParser.d.ts +13 -0
- package/dist/core/parser/PDFParser.d.ts +46 -0
- package/dist/core/parser/PDFXRefStreamParser.d.ts +21 -0
- package/dist/core/streams/Ascii85Stream.d.ts +9 -0
- package/dist/core/streams/AsciiHexStream.d.ts +9 -0
- package/dist/core/streams/DecodeStream.d.ts +26 -0
- package/dist/core/streams/DecryptStream.d.ts +12 -0
- package/dist/core/streams/FlateStream.d.ts +13 -0
- package/dist/core/streams/LZWStream.d.ts +12 -0
- package/dist/core/streams/RunLengthStream.d.ts +8 -0
- package/dist/core/streams/Stream.d.ts +34 -0
- package/dist/core/streams/decode.d.ts +3 -0
- package/dist/core/structures/PDFCatalog.d.ts +27 -0
- package/dist/core/structures/PDFContentStream.d.ts +15 -0
- package/dist/core/structures/PDFCrossRefStream.d.ts +53 -0
- package/dist/core/structures/PDFFlateStream.d.ts +13 -0
- package/dist/core/structures/PDFObjectStream.d.ts +20 -0
- package/dist/core/structures/PDFPageLeaf.d.ts +54 -0
- package/dist/core/structures/PDFPageTree.d.ts +41 -0
- package/dist/core/syntax/CharCodes.d.ts +61 -0
- package/dist/core/syntax/Delimiters.d.ts +1 -0
- package/dist/core/syntax/Irregular.d.ts +1 -0
- package/dist/core/syntax/Keywords.d.ts +22 -0
- package/dist/core/syntax/Numeric.d.ts +3 -0
- package/dist/core/syntax/Whitespace.d.ts +1 -0
- package/dist/core/writers/PDFStreamWriter.d.ts +19 -0
- package/dist/core/writers/PDFWriter.d.ts +29 -0
- package/dist/index.js +19124 -0
- package/dist/index.js.map +1 -0
- package/dist/types/fontkit.d.ts +597 -0
- package/{src/types/index.ts → dist/types/index.d.ts} +8 -13
- package/{src/types/matrix.ts → dist/types/matrix.d.ts} +1 -2
- package/dist/utils/Cache.d.ts +10 -0
- package/dist/utils/arrays.d.ts +16 -0
- package/dist/utils/async.d.ts +5 -0
- package/dist/utils/base64.d.ts +10 -0
- package/dist/utils/elements/Arc.d.ts +22 -0
- package/dist/utils/elements/Circle.d.ts +14 -0
- package/dist/utils/elements/Ellipse.d.ts +20 -0
- package/dist/utils/elements/GraphElement.d.ts +6 -0
- package/dist/utils/elements/Line.d.ts +23 -0
- package/dist/utils/elements/Plot.d.ts +11 -0
- package/dist/utils/elements/Point.d.ts +18 -0
- package/dist/utils/elements/Rectangle.d.ts +21 -0
- package/dist/utils/elements/Segment.d.ts +19 -0
- package/dist/utils/errors.d.ts +1 -0
- package/dist/utils/intersections.d.ts +9 -0
- package/dist/utils/maths.d.ts +45 -0
- package/dist/utils/numbers.d.ts +23 -0
- package/dist/utils/objects.d.ts +15 -0
- package/dist/utils/pdfDocEncoding.d.ts +7 -0
- package/dist/utils/png.d.ts +17 -0
- package/dist/utils/rng.d.ts +13 -0
- package/dist/utils/strings.d.ts +25 -0
- package/{src/utils/unicode.ts → dist/utils/unicode.d.ts} +8 -195
- package/dist/utils/validators.d.ts +26 -0
- package/package.json +6 -1
- package/__tests__/api/PDFDocument.spec.ts +0 -576
- package/__tests__/api/PDFImage.spec.ts +0 -60
- package/__tests__/api/PDFPage.spec.ts +0 -151
- package/__tests__/api/form/PDFCheckBox.spec.ts +0 -71
- package/__tests__/api/form/PDFDropdown.spec.ts +0 -118
- package/__tests__/api/form/PDFForm.spec.ts +0 -370
- package/__tests__/api/form/PDFOptionList.spec.ts +0 -104
- package/__tests__/api/form/PDFRadioGroup.spec.ts +0 -183
- package/__tests__/api/form/PDFTextField.spec.ts +0 -148
- package/__tests__/api/svgPath.spec.ts +0 -153
- package/__tests__/api/text/layout.spec.ts +0 -166
- package/__tests__/core/PDFContext.spec.ts +0 -194
- package/__tests__/core/PDFObjectCopier.spec.ts +0 -421
- package/__tests__/core/acroform/PDFAcroField.spec.ts +0 -98
- package/__tests__/core/acroform/PDFAcroTerminal.spec.ts +0 -39
- package/__tests__/core/annotation/PDFWidgetAnnotation.spec.ts +0 -40
- package/__tests__/core/document/PDFCrossRefSection.spec.ts +0 -88
- package/__tests__/core/document/PDFHeader.spec.ts +0 -22
- package/__tests__/core/document/PDFTrailer.spec.ts +0 -28
- package/__tests__/core/document/PDFTrailerDict.spec.ts +0 -24
- package/__tests__/core/embedders/CMap.spec.ts +0 -47
- package/__tests__/core/embedders/CustomFontEmbedder.spec.ts +0 -96
- package/__tests__/core/embedders/CustomFontSubsetEmbedder.spec.ts +0 -62
- package/__tests__/core/embedders/FileEmbedder.spec.ts +0 -54
- package/__tests__/core/embedders/JpegEmbedder.spec.ts +0 -67
- package/__tests__/core/embedders/PDFPageEmbedder.spec.ts +0 -65
- package/__tests__/core/embedders/PngEmbedder.spec.ts +0 -87
- package/__tests__/core/embedders/StandardFontEmbedder.spec.ts +0 -79
- package/__tests__/core/embedders/data/SourceHanSerifJP-Regular.otf.cmap +0 -16096
- package/__tests__/core/embedders/data/Ubuntu-R.ttf.cmap +0 -1211
- package/__tests__/core/objects/PDFArray.spec.ts +0 -134
- package/__tests__/core/objects/PDFBool.spec.ts +0 -42
- package/__tests__/core/objects/PDFDict.spec.ts +0 -195
- package/__tests__/core/objects/PDFHexString.spec.ts +0 -168
- package/__tests__/core/objects/PDFInvalidObject.spec.ts +0 -32
- package/__tests__/core/objects/PDFName.spec.ts +0 -122
- package/__tests__/core/objects/PDFNull.spec.ts +0 -30
- package/__tests__/core/objects/PDFNumber.spec.ts +0 -50
- package/__tests__/core/objects/PDFObject.spec.ts +0 -29
- package/__tests__/core/objects/PDFRawStream.spec.ts +0 -45
- package/__tests__/core/objects/PDFRef.spec.ts +0 -60
- package/__tests__/core/objects/PDFString.spec.ts +0 -237
- package/__tests__/core/operators/PDFOperator.spec.ts +0 -77
- package/__tests__/core/parser/PDFObjectParser.spec.ts +0 -730
- package/__tests__/core/parser/PDFObjectStreamParser.spec.ts +0 -158
- package/__tests__/core/parser/PDFParser.spec.ts +0 -398
- package/__tests__/core/parser/PDFXRefStreamParser.spec.ts +0 -187
- package/__tests__/core/parser/data/object-stream-invalid +0 -2
- package/__tests__/core/parser/data/object-stream1 +0 -16
- package/__tests__/core/parser/data/object-stream2 +0 -10
- package/__tests__/core/parser/data/object-stream3 +0 -0
- package/__tests__/core/parser/data/object-stream4 +0 -0
- package/__tests__/core/parser/data/xref-stream1 +0 -0
- package/__tests__/core/parser/data/xref-stream2 +0 -0
- package/__tests__/core/parser/data/xref-stream3 +0 -0
- package/__tests__/core/parser/data/xref-stream4 +0 -0
- package/__tests__/core/streams/Ascii85Stream.spec.ts +0 -20
- package/__tests__/core/streams/AsciiHexStream.spec.ts +0 -20
- package/__tests__/core/streams/FlateStream.spec.ts +0 -20
- package/__tests__/core/streams/LZWStream.spec.ts +0 -20
- package/__tests__/core/streams/RunLengthStream.spec.ts +0 -20
- package/__tests__/core/streams/Stream.spec.ts +0 -128
- package/__tests__/core/streams/data/ascii85/1.decoded +0 -0
- package/__tests__/core/streams/data/ascii85/1.encoded +0 -43
- package/__tests__/core/streams/data/asciihex/1.decoded +0 -1
- package/__tests__/core/streams/data/asciihex/1.encoded +0 -1
- package/__tests__/core/streams/data/asciihex/2.decoded +0 -7
- package/__tests__/core/streams/data/asciihex/2.encoded +0 -1
- package/__tests__/core/streams/data/flate/1.corrupt.encoded +0 -1
- package/__tests__/core/streams/data/flate/1.decoded +0 -0
- package/__tests__/core/streams/data/flate/1.encoded +0 -2
- package/__tests__/core/streams/data/flate/2.decoded +0 -33
- package/__tests__/core/streams/data/flate/2.encoded +0 -0
- package/__tests__/core/streams/data/flate/3.decoded +0 -15
- package/__tests__/core/streams/data/flate/3.encoded +0 -0
- package/__tests__/core/streams/data/flate/4.decoded +0 -16
- package/__tests__/core/streams/data/flate/4.encoded +0 -0
- package/__tests__/core/streams/data/flate/5.decoded +0 -0
- package/__tests__/core/streams/data/flate/5.encoded +0 -0
- package/__tests__/core/streams/data/flate/6.decoded +0 -17
- package/__tests__/core/streams/data/flate/6.encoded +0 -0
- package/__tests__/core/streams/data/flate/7.decoded +0 -20
- package/__tests__/core/streams/data/flate/7.encoded +0 -1
- package/__tests__/core/streams/data/lzw/1.decoded +0 -0
- package/__tests__/core/streams/data/lzw/1.encoded +0 -0
- package/__tests__/core/streams/data/lzw/2.decoded +0 -0
- package/__tests__/core/streams/data/lzw/2.encoded +0 -0
- package/__tests__/core/streams/data/lzw/3.decoded +0 -14
- package/__tests__/core/streams/data/lzw/3.encoded +0 -2
- package/__tests__/core/streams/data/lzw/4.decoded +0 -14
- package/__tests__/core/streams/data/lzw/4.encoded +0 -2
- package/__tests__/core/streams/data/runlength/1.decoded +0 -1
- package/__tests__/core/streams/data/runlength/1.encoded +0 -1
- package/__tests__/core/streams/data/runlength/2.decoded +0 -1
- package/__tests__/core/streams/data/runlength/2.encoded +0 -1
- package/__tests__/core/streams/data/runlength/3.decoded +0 -0
- package/__tests__/core/streams/data/runlength/3.encoded +0 -0
- package/__tests__/core/streams/data/runlength/4.decoded +0 -1
- package/__tests__/core/streams/data/runlength/4.encoded +0 -1
- package/__tests__/core/streams/data/runlength/5.decoded +0 -1
- package/__tests__/core/streams/data/runlength/5.encoded +0 -1
- package/__tests__/core/streams/data/runlength/empty.encoded +0 -1
- package/__tests__/core/structures/PDFCatalog.spec.ts +0 -108
- package/__tests__/core/structures/PDFContentStream.spec.ts +0 -117
- package/__tests__/core/structures/PDFCrossRefStream.spec.ts +0 -145
- package/__tests__/core/structures/PDFObjectStream.spec.ts +0 -138
- package/__tests__/core/structures/PDFPageLeaf.spec.ts +0 -355
- package/__tests__/core/structures/PDFPageTree.spec.ts +0 -592
- package/__tests__/core/writers/PDFStreamWriter.spec.ts +0 -71
- package/__tests__/core/writers/PDFWriter.spec.ts +0 -144
- package/__tests__/core/writers/data/stream-writer-1.pdf +0 -0
- package/__tests__/index.test.ts +0 -12
- package/__tests__/utils/base64.spec.ts +0 -61
- package/__tests__/utils/data/simple.pdf +0 -201
- package/__tests__/utils/data/simple.pdf.base64 +0 -1
- package/__tests__/utils/pdfDocEncoding.spec.ts +0 -82
- package/__tests__/utils/png.spec.ts +0 -53
- package/__tests__/utils/rng.spec.ts +0 -14
- package/__tests__/utils/strings.spec.ts +0 -98
- package/__tests__/utils/unicode.spec.ts +0 -337
- package/assets/fonts/source_hans_jp/SourceHanSerifJP-Regular.otf +0 -0
- package/assets/fonts/ubuntu/Ubuntu-B.ttf +0 -0
- package/assets/fonts/ubuntu/Ubuntu-R.ttf +0 -0
- package/assets/images/cat_riding_unicorn.jpg +0 -0
- package/assets/images/cmyk_colorspace.jpg +0 -0
- package/assets/images/greyscale_bird.png +0 -0
- package/assets/images/minions_banana_alpha.png +0 -0
- package/assets/images/minions_banana_no_alpha.png +0 -0
- package/assets/images/minions_laughing.jpg +0 -0
- package/assets/pdfs/bixby_guide.pdf +0 -0
- package/assets/pdfs/encrypted_new.pdf +0 -0
- package/assets/pdfs/encrypted_old.pdf +0 -0
- package/assets/pdfs/fancy_fields.pdf +0 -0
- package/assets/pdfs/giraffe.pdf +0 -0
- package/assets/pdfs/invalid_root_ref.pdf +0 -0
- package/assets/pdfs/just_metadata.pdf +0 -49
- package/assets/pdfs/missing_endobj_keyword.pdf +0 -70
- package/assets/pdfs/missing_xref_trailer_dict.pdf +0 -141
- package/assets/pdfs/normal.pdf +0 -0
- package/assets/pdfs/pdf20examples/PDF 2.0 with offset start.pdf +0 -179
- package/assets/pdfs/stuff_following_header.pdf +0 -0
- package/assets/pdfs/us_constitution.pdf +0 -0
- package/assets/pdfs/with_comments.pdf +0 -0
- package/assets/pdfs/with_invalid_objects.pdf +0 -53
- package/assets/pdfs/with_invalid_stream_EOL.pdf +0 -0
- package/assets/pdfs/with_null_parent_entry.pdf +0 -0
- package/assets/pdfs/with_signature.pdf +0 -0
- package/assets/pdfs/with_update_sections.pdf +0 -0
- package/assets/pdfs/with_viewer_prefs.pdf +0 -0
- package/assets/pdfs/with_xfa_fields.pdf +0 -0
- package/src/api/PDFDocument.ts +0 -1389
- package/src/api/PDFDocumentOptions.ts +0 -45
- package/src/api/PDFEmbeddedFile.ts +0 -87
- package/src/api/PDFEmbeddedPage.ts +0 -100
- package/src/api/PDFFont.ts +0 -149
- package/src/api/PDFImage.ts +0 -143
- package/src/api/PDFJavaScript.ts +0 -75
- package/src/api/PDFPage.ts +0 -1604
- package/src/api/PDFPageOptions.ts +0 -175
- package/src/api/StandardFonts.ts +0 -16
- package/src/api/colors.ts +0 -109
- package/src/api/errors.ts +0 -110
- package/src/api/form/PDFButton.ts +0 -242
- package/src/api/form/PDFCheckBox.ts +0 -247
- package/src/api/form/PDFDropdown.ts +0 -637
- package/src/api/form/PDFField.ts +0 -491
- package/src/api/form/PDFForm.ts +0 -842
- package/src/api/form/PDFOptionList.ts +0 -555
- package/src/api/form/PDFRadioGroup.ts +0 -455
- package/src/api/form/PDFSignature.ts +0 -44
- package/src/api/form/PDFTextField.ts +0 -811
- package/src/api/form/appearances.ts +0 -655
- package/src/api/image/alignment.ts +0 -5
- package/src/api/objects.ts +0 -10
- package/src/api/operations.ts +0 -873
- package/src/api/operators.ts +0 -335
- package/src/api/rotations.ts +0 -84
- package/src/api/sizes.ts +0 -52
- package/src/api/svg.ts +0 -888
- package/src/api/svgPath.ts +0 -460
- package/src/api/text/alignment.ts +0 -5
- package/src/api/text/layout.ts +0 -328
- package/src/core/PDFContext.ts +0 -274
- package/src/core/PDFObjectCopier.ts +0 -142
- package/src/core/acroform/PDFAcroButton.ts +0 -104
- package/src/core/acroform/PDFAcroCheckBox.ts +0 -48
- package/src/core/acroform/PDFAcroChoice.ts +0 -143
- package/src/core/acroform/PDFAcroComboBox.ts +0 -21
- package/src/core/acroform/PDFAcroField.ts +0 -168
- package/src/core/acroform/PDFAcroForm.ts +0 -96
- package/src/core/acroform/PDFAcroListBox.ts +0 -19
- package/src/core/acroform/PDFAcroNonTerminal.ts +0 -33
- package/src/core/acroform/PDFAcroPushButton.ts +0 -21
- package/src/core/acroform/PDFAcroRadioButton.ts +0 -57
- package/src/core/acroform/PDFAcroTerminal.ts +0 -70
- package/src/core/acroform/PDFAcroText.ts +0 -76
- package/src/core/acroform/flags.ts +0 -162
- package/src/core/acroform/utils.ts +0 -129
- package/src/core/annotation/AppearanceCharacteristics.ts +0 -133
- package/src/core/annotation/BorderStyle.ts +0 -31
- package/src/core/annotation/PDFAnnotation.ts +0 -148
- package/src/core/annotation/PDFWidgetAnnotation.ts +0 -111
- package/src/core/annotation/flags.ts +0 -90
- package/src/core/crypto.ts +0 -1844
- package/src/core/document/PDFCrossRefSection.ts +0 -161
- package/src/core/document/PDFHeader.ts +0 -48
- package/src/core/document/PDFTrailer.ts +0 -48
- package/src/core/document/PDFTrailerDict.ts +0 -39
- package/src/core/embedders/CMap.ts +0 -65
- package/src/core/embedders/CustomFontEmbedder.ts +0 -237
- package/src/core/embedders/CustomFontSubsetEmbedder.ts +0 -89
- package/src/core/embedders/FileEmbedder.ts +0 -77
- package/src/core/embedders/FontFlags.ts +0 -45
- package/src/core/embedders/JavaScriptEmbedder.ts +0 -34
- package/src/core/embedders/JpegEmbedder.ts +0 -118
- package/src/core/embedders/PDFPageEmbedder.ts +0 -139
- package/src/core/embedders/PngEmbedder.ts +0 -69
- package/src/core/embedders/StandardFontEmbedder.ts +0 -121
- package/src/core/errors.ts +0 -226
- package/src/core/interactive/ViewerPreferences.ts +0 -565
- package/src/core/objects/PDFArray.ts +0 -179
- package/src/core/objects/PDFBool.ts +0 -53
- package/src/core/objects/PDFDict.ts +0 -220
- package/src/core/objects/PDFHexString.ts +0 -94
- package/src/core/objects/PDFInvalidObject.ts +0 -34
- package/src/core/objects/PDFName.ts +0 -152
- package/src/core/objects/PDFNull.ts +0 -30
- package/src/core/objects/PDFNumber.ts +0 -44
- package/src/core/objects/PDFObject.ts +0 -22
- package/src/core/objects/PDFRawStream.ts +0 -41
- package/src/core/objects/PDFRef.ts +0 -51
- package/src/core/objects/PDFStream.ts +0 -87
- package/src/core/objects/PDFString.ts +0 -118
- package/src/core/operators/PDFOperator.ts +0 -72
- package/src/core/operators/PDFOperatorNames.ts +0 -92
- package/src/core/parser/BaseParser.ts +0 -119
- package/src/core/parser/ByteStream.ts +0 -76
- package/src/core/parser/PDFObjectParser.ts +0 -302
- package/src/core/parser/PDFObjectStreamParser.ts +0 -65
- package/src/core/parser/PDFParser.ts +0 -363
- package/src/core/parser/PDFXRefStreamParser.ts +0 -129
- package/src/core/streams/Ascii85Stream.ts +0 -97
- package/src/core/streams/AsciiHexStream.ts +0 -77
- package/src/core/streams/DecodeStream.ts +0 -188
- package/src/core/streams/DecryptStream.ts +0 -49
- package/src/core/streams/FlateStream.ts +0 -397
- package/src/core/streams/LZWStream.ts +0 -157
- package/src/core/streams/RunLengthStream.ts +0 -55
- package/src/core/streams/Stream.ts +0 -126
- package/src/core/streams/decode.ts +0 -70
- package/src/core/structures/PDFCatalog.ts +0 -81
- package/src/core/structures/PDFContentStream.ts +0 -58
- package/src/core/structures/PDFCrossRefStream.ts +0 -238
- package/src/core/structures/PDFFlateStream.ts +0 -40
- package/src/core/structures/PDFObjectStream.ts +0 -91
- package/src/core/structures/PDFPageLeaf.ts +0 -244
- package/src/core/structures/PDFPageTree.ts +0 -192
- package/src/core/syntax/CharCodes.ts +0 -62
- package/src/core/syntax/Delimiters.ts +0 -14
- package/src/core/syntax/Irregular.ts +0 -10
- package/src/core/syntax/Keywords.ts +0 -57
- package/src/core/syntax/Numeric.ts +0 -26
- package/src/core/syntax/Whitespace.ts +0 -10
- package/src/core/writers/PDFStreamWriter.ts +0 -114
- package/src/core/writers/PDFWriter.ts +0 -146
- package/src/types/fontkit.ts +0 -643
- package/src/utils/Cache.ts +0 -26
- package/src/utils/arrays.ts +0 -153
- package/src/utils/async.ts +0 -8
- package/src/utils/base64.ts +0 -98
- package/src/utils/elements/Arc.ts +0 -97
- package/src/utils/elements/Circle.ts +0 -47
- package/src/utils/elements/Ellipse.ts +0 -117
- package/src/utils/elements/GraphElement.ts +0 -14
- package/src/utils/elements/Line.ts +0 -83
- package/src/utils/elements/Plot.ts +0 -50
- package/src/utils/elements/Point.ts +0 -37
- package/src/utils/elements/Rectangle.ts +0 -65
- package/src/utils/elements/Segment.ts +0 -81
- package/src/utils/errors.ts +0 -3
- package/src/utils/intersections.ts +0 -237
- package/src/utils/maths.ts +0 -96
- package/src/utils/numbers.ts +0 -55
- package/src/utils/objects.ts +0 -13
- package/src/utils/pdfDocEncoding.ts +0 -69
- package/src/utils/png.ts +0 -100
- package/src/utils/rng.ts +0 -21
- package/src/utils/strings.ts +0 -191
- package/src/utils/validators.ts +0 -192
- package/tsconfig.build.json +0 -14
- package/tsconfig.json +0 -15
- package/vite.config.mts +0 -39
- /package/{src/api/form/index.ts → dist/api/form/index.d.ts} +0 -0
- /package/{src/api/image/index.ts → dist/api/image/index.d.ts} +0 -0
- /package/{src/api/index.ts → dist/api/index.d.ts} +0 -0
- /package/{src/api/text/index.ts → dist/api/text/index.d.ts} +0 -0
- /package/{src/core/acroform/index.ts → dist/core/acroform/index.d.ts} +0 -0
- /package/{src/core/annotation/index.ts → dist/core/annotation/index.d.ts} +0 -0
- /package/{src/index.ts → dist/index.d.ts} +0 -0
- /package/{src/utils/elements/index.ts → dist/utils/elements/index.d.ts} +0 -0
- /package/{src/utils/index.ts → dist/utils/index.d.ts} +0 -0
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import PDFDict from '../objects/PDFDict';
|
|
2
|
-
import PDFName from '../objects/PDFName';
|
|
3
|
-
import PDFNumber from '../objects/PDFNumber';
|
|
4
|
-
import PDFArray from '../objects/PDFArray';
|
|
5
|
-
import PDFHexString from '../objects/PDFHexString';
|
|
6
|
-
import PDFString from '../objects/PDFString';
|
|
7
|
-
|
|
8
|
-
class AppearanceCharacteristics {
|
|
9
|
-
readonly dict: PDFDict;
|
|
10
|
-
|
|
11
|
-
static fromDict = (dict: PDFDict): AppearanceCharacteristics =>
|
|
12
|
-
new AppearanceCharacteristics(dict);
|
|
13
|
-
|
|
14
|
-
protected constructor(dict: PDFDict) {
|
|
15
|
-
this.dict = dict;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
R(): PDFNumber | undefined {
|
|
19
|
-
const R = this.dict.lookup(PDFName.of('R'));
|
|
20
|
-
if (R instanceof PDFNumber) return R;
|
|
21
|
-
return undefined;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
BC(): PDFArray | undefined {
|
|
25
|
-
const BC = this.dict.lookup(PDFName.of('BC'));
|
|
26
|
-
if (BC instanceof PDFArray) return BC;
|
|
27
|
-
return undefined;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
BG(): PDFArray | undefined {
|
|
31
|
-
const BG = this.dict.lookup(PDFName.of('BG'));
|
|
32
|
-
if (BG instanceof PDFArray) return BG;
|
|
33
|
-
return undefined;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
CA(): PDFHexString | PDFString | undefined {
|
|
37
|
-
const CA = this.dict.lookup(PDFName.of('CA'));
|
|
38
|
-
if (CA instanceof PDFHexString || CA instanceof PDFString) return CA;
|
|
39
|
-
return undefined;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
RC(): PDFHexString | PDFString | undefined {
|
|
43
|
-
const RC = this.dict.lookup(PDFName.of('RC'));
|
|
44
|
-
if (RC instanceof PDFHexString || RC instanceof PDFString) return RC;
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
AC(): PDFHexString | PDFString | undefined {
|
|
49
|
-
const AC = this.dict.lookup(PDFName.of('AC'));
|
|
50
|
-
if (AC instanceof PDFHexString || AC instanceof PDFString) return AC;
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
getRotation(): number | undefined {
|
|
55
|
-
return this.R()?.asNumber();
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
getBorderColor(): number[] | undefined {
|
|
59
|
-
const BC = this.BC();
|
|
60
|
-
|
|
61
|
-
if (!BC) return undefined;
|
|
62
|
-
|
|
63
|
-
const components: number[] = [];
|
|
64
|
-
for (let idx = 0, len = BC?.size(); idx < len; idx++) {
|
|
65
|
-
const component = BC.get(idx);
|
|
66
|
-
if (component instanceof PDFNumber) components.push(component.asNumber());
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return components;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
getBackgroundColor(): number[] | undefined {
|
|
73
|
-
const BG = this.BG();
|
|
74
|
-
|
|
75
|
-
if (!BG) return undefined;
|
|
76
|
-
|
|
77
|
-
const components: number[] = [];
|
|
78
|
-
for (let idx = 0, len = BG?.size(); idx < len; idx++) {
|
|
79
|
-
const component = BG.get(idx);
|
|
80
|
-
if (component instanceof PDFNumber) components.push(component.asNumber());
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
return components;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
getCaptions(): { normal?: string; rollover?: string; down?: string } {
|
|
87
|
-
const CA = this.CA();
|
|
88
|
-
const RC = this.RC();
|
|
89
|
-
const AC = this.AC();
|
|
90
|
-
|
|
91
|
-
return {
|
|
92
|
-
normal: CA?.decodeText(),
|
|
93
|
-
rollover: RC?.decodeText(),
|
|
94
|
-
down: AC?.decodeText(),
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
setRotation(rotation: number) {
|
|
99
|
-
const R = this.dict.context.obj(rotation);
|
|
100
|
-
this.dict.set(PDFName.of('R'), R);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
setBorderColor(color: number[]) {
|
|
104
|
-
const BC = this.dict.context.obj(color);
|
|
105
|
-
this.dict.set(PDFName.of('BC'), BC);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
setBackgroundColor(color: number[]) {
|
|
109
|
-
const BG = this.dict.context.obj(color);
|
|
110
|
-
this.dict.set(PDFName.of('BG'), BG);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
setCaptions(captions: { normal: string; rollover?: string; down?: string }) {
|
|
114
|
-
const CA = PDFHexString.fromText(captions.normal);
|
|
115
|
-
this.dict.set(PDFName.of('CA'), CA);
|
|
116
|
-
|
|
117
|
-
if (captions.rollover) {
|
|
118
|
-
const RC = PDFHexString.fromText(captions.rollover);
|
|
119
|
-
this.dict.set(PDFName.of('RC'), RC);
|
|
120
|
-
} else {
|
|
121
|
-
this.dict.delete(PDFName.of('RC'));
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
if (captions.down) {
|
|
125
|
-
const AC = PDFHexString.fromText(captions.down);
|
|
126
|
-
this.dict.set(PDFName.of('AC'), AC);
|
|
127
|
-
} else {
|
|
128
|
-
this.dict.delete(PDFName.of('AC'));
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
export default AppearanceCharacteristics;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import PDFDict from '../objects/PDFDict';
|
|
2
|
-
import PDFName from '../objects/PDFName';
|
|
3
|
-
import PDFNumber from '../objects/PDFNumber';
|
|
4
|
-
|
|
5
|
-
// TODO: Also handle the `/S` and `/D` entries
|
|
6
|
-
class BorderStyle {
|
|
7
|
-
readonly dict: PDFDict;
|
|
8
|
-
|
|
9
|
-
static fromDict = (dict: PDFDict): BorderStyle => new BorderStyle(dict);
|
|
10
|
-
|
|
11
|
-
protected constructor(dict: PDFDict) {
|
|
12
|
-
this.dict = dict;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
W(): PDFNumber | undefined {
|
|
16
|
-
const W = this.dict.lookup(PDFName.of('W'));
|
|
17
|
-
if (W instanceof PDFNumber) return W;
|
|
18
|
-
return undefined;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
getWidth(): number | undefined {
|
|
22
|
-
return this.W()?.asNumber() ?? 1;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
setWidth(width: number) {
|
|
26
|
-
const W = this.dict.context.obj(width);
|
|
27
|
-
this.dict.set(PDFName.of('W'), W);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export default BorderStyle;
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import PDFDict from '../objects/PDFDict';
|
|
2
|
-
import PDFName from '../objects/PDFName';
|
|
3
|
-
import PDFStream from '../objects/PDFStream';
|
|
4
|
-
import PDFArray from '../objects/PDFArray';
|
|
5
|
-
import PDFRef from '../objects/PDFRef';
|
|
6
|
-
import PDFNumber from '../objects/PDFNumber';
|
|
7
|
-
|
|
8
|
-
class PDFAnnotation {
|
|
9
|
-
readonly dict: PDFDict;
|
|
10
|
-
|
|
11
|
-
static fromDict = (dict: PDFDict): PDFAnnotation => new PDFAnnotation(dict);
|
|
12
|
-
|
|
13
|
-
protected constructor(dict: PDFDict) {
|
|
14
|
-
this.dict = dict;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
// This is technically required by the PDF spec
|
|
18
|
-
Rect(): PDFArray | undefined {
|
|
19
|
-
return this.dict.lookup(PDFName.of('Rect'), PDFArray);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
AP(): PDFDict | undefined {
|
|
23
|
-
return this.dict.lookupMaybe(PDFName.of('AP'), PDFDict);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
F(): PDFNumber | undefined {
|
|
27
|
-
const numberOrRef = this.dict.lookup(PDFName.of('F'));
|
|
28
|
-
return this.dict.context.lookupMaybe(numberOrRef, PDFNumber);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
getRectangle(): { x: number; y: number; width: number; height: number } {
|
|
32
|
-
const Rect = this.Rect();
|
|
33
|
-
return Rect?.asRectangle() ?? { x: 0, y: 0, width: 0, height: 0 };
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
setRectangle(rect: { x: number; y: number; width: number; height: number }) {
|
|
37
|
-
const { x, y, width, height } = rect;
|
|
38
|
-
const Rect = this.dict.context.obj([x, y, x + width, y + height]);
|
|
39
|
-
this.dict.set(PDFName.of('Rect'), Rect);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
getAppearanceState(): PDFName | undefined {
|
|
43
|
-
const AS = this.dict.lookup(PDFName.of('AS'));
|
|
44
|
-
if (AS instanceof PDFName) return AS;
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
setAppearanceState(state: PDFName) {
|
|
49
|
-
this.dict.set(PDFName.of('AS'), state);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
setAppearances(appearances: PDFDict) {
|
|
53
|
-
this.dict.set(PDFName.of('AP'), appearances);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
ensureAP(): PDFDict {
|
|
57
|
-
let AP = this.AP();
|
|
58
|
-
if (!AP) {
|
|
59
|
-
AP = this.dict.context.obj({});
|
|
60
|
-
this.dict.set(PDFName.of('AP'), AP);
|
|
61
|
-
}
|
|
62
|
-
return AP;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
getNormalAppearance(): PDFRef | PDFDict {
|
|
66
|
-
const AP = this.ensureAP();
|
|
67
|
-
const N = AP.get(PDFName.of('N'));
|
|
68
|
-
if (N instanceof PDFRef || N instanceof PDFDict) return N;
|
|
69
|
-
|
|
70
|
-
throw new Error(`Unexpected N type: ${N?.constructor.name}`);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/** @param appearance A PDFDict or PDFStream (direct or ref) */
|
|
74
|
-
setNormalAppearance(appearance: PDFRef | PDFDict) {
|
|
75
|
-
const AP = this.ensureAP();
|
|
76
|
-
AP.set(PDFName.of('N'), appearance);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
/** @param appearance A PDFDict or PDFStream (direct or ref) */
|
|
80
|
-
setRolloverAppearance(appearance: PDFRef | PDFDict) {
|
|
81
|
-
const AP = this.ensureAP();
|
|
82
|
-
AP.set(PDFName.of('R'), appearance);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/** @param appearance A PDFDict or PDFStream (direct or ref) */
|
|
86
|
-
setDownAppearance(appearance: PDFRef | PDFDict) {
|
|
87
|
-
const AP = this.ensureAP();
|
|
88
|
-
AP.set(PDFName.of('D'), appearance);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
removeRolloverAppearance() {
|
|
92
|
-
const AP = this.AP();
|
|
93
|
-
AP?.delete(PDFName.of('R'));
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
removeDownAppearance() {
|
|
97
|
-
const AP = this.AP();
|
|
98
|
-
AP?.delete(PDFName.of('D'));
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
getAppearances():
|
|
102
|
-
| {
|
|
103
|
-
normal: PDFStream | PDFDict;
|
|
104
|
-
rollover?: PDFStream | PDFDict;
|
|
105
|
-
down?: PDFStream | PDFDict;
|
|
106
|
-
}
|
|
107
|
-
| undefined {
|
|
108
|
-
const AP = this.AP();
|
|
109
|
-
|
|
110
|
-
if (!AP) return undefined;
|
|
111
|
-
|
|
112
|
-
const N = AP.lookup(PDFName.of('N'), PDFDict, PDFStream);
|
|
113
|
-
const R = AP.lookupMaybe(PDFName.of('R'), PDFDict, PDFStream);
|
|
114
|
-
const D = AP.lookupMaybe(PDFName.of('D'), PDFDict, PDFStream);
|
|
115
|
-
|
|
116
|
-
return { normal: N, rollover: R, down: D };
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
getFlags(): number {
|
|
120
|
-
return this.F()?.asNumber() ?? 0;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
setFlags(flags: number) {
|
|
124
|
-
this.dict.set(PDFName.of('F'), PDFNumber.of(flags));
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
hasFlag(flag: number): boolean {
|
|
128
|
-
const flags = this.getFlags();
|
|
129
|
-
return (flags & flag) !== 0;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
setFlag(flag: number) {
|
|
133
|
-
const flags = this.getFlags();
|
|
134
|
-
this.setFlags(flags | flag);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
clearFlag(flag: number) {
|
|
138
|
-
const flags = this.getFlags();
|
|
139
|
-
this.setFlags(flags & ~flag);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
setFlagTo(flag: number, enable: boolean) {
|
|
143
|
-
if (enable) this.setFlag(flag);
|
|
144
|
-
else this.clearFlag(flag);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
export default PDFAnnotation;
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import PDFDict from '../objects/PDFDict';
|
|
2
|
-
import PDFName from '../objects/PDFName';
|
|
3
|
-
import PDFRef from '../objects/PDFRef';
|
|
4
|
-
import PDFString from '../objects/PDFString';
|
|
5
|
-
import PDFHexString from '../objects/PDFHexString';
|
|
6
|
-
import PDFContext from '../PDFContext';
|
|
7
|
-
import BorderStyle from './BorderStyle';
|
|
8
|
-
import PDFAnnotation from './PDFAnnotation';
|
|
9
|
-
import AppearanceCharacteristics from './AppearanceCharacteristics';
|
|
10
|
-
|
|
11
|
-
class PDFWidgetAnnotation extends PDFAnnotation {
|
|
12
|
-
static fromDict = (dict: PDFDict): PDFWidgetAnnotation => new PDFWidgetAnnotation(dict);
|
|
13
|
-
|
|
14
|
-
static create = (context: PDFContext, parent: PDFRef) => {
|
|
15
|
-
const dict = context.obj({
|
|
16
|
-
Type: 'Annot',
|
|
17
|
-
Subtype: 'Widget',
|
|
18
|
-
Rect: [0, 0, 0, 0],
|
|
19
|
-
Parent: parent,
|
|
20
|
-
});
|
|
21
|
-
return new PDFWidgetAnnotation(dict);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
MK(): PDFDict | undefined {
|
|
25
|
-
const MK = this.dict.lookup(PDFName.of('MK'));
|
|
26
|
-
if (MK instanceof PDFDict) return MK;
|
|
27
|
-
return undefined;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
BS(): PDFDict | undefined {
|
|
31
|
-
const BS = this.dict.lookup(PDFName.of('BS'));
|
|
32
|
-
if (BS instanceof PDFDict) return BS;
|
|
33
|
-
return undefined;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
DA(): PDFString | PDFHexString | undefined {
|
|
37
|
-
const da = this.dict.lookup(PDFName.of('DA'));
|
|
38
|
-
if (da instanceof PDFString || da instanceof PDFHexString) return da;
|
|
39
|
-
return undefined;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
P(): PDFRef | undefined {
|
|
43
|
-
const P = this.dict.get(PDFName.of('P'));
|
|
44
|
-
if (P instanceof PDFRef) return P;
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
setP(page: PDFRef) {
|
|
49
|
-
this.dict.set(PDFName.of('P'), page);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
setDefaultAppearance(appearance: string) {
|
|
53
|
-
this.dict.set(PDFName.of('DA'), PDFString.of(appearance));
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
getDefaultAppearance(): string | undefined {
|
|
57
|
-
const DA = this.DA();
|
|
58
|
-
|
|
59
|
-
if (DA instanceof PDFHexString) {
|
|
60
|
-
return DA.decodeText();
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
return DA?.asString();
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
getAppearanceCharacteristics(): AppearanceCharacteristics | undefined {
|
|
67
|
-
const MK = this.MK();
|
|
68
|
-
if (MK) return AppearanceCharacteristics.fromDict(MK);
|
|
69
|
-
return undefined;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
getOrCreateAppearanceCharacteristics(): AppearanceCharacteristics {
|
|
73
|
-
const MK = this.MK();
|
|
74
|
-
if (MK) return AppearanceCharacteristics.fromDict(MK);
|
|
75
|
-
|
|
76
|
-
const ac = AppearanceCharacteristics.fromDict(this.dict.context.obj({}));
|
|
77
|
-
this.dict.set(PDFName.of('MK'), ac.dict);
|
|
78
|
-
return ac;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
getBorderStyle(): BorderStyle | undefined {
|
|
82
|
-
const BS = this.BS();
|
|
83
|
-
if (BS) return BorderStyle.fromDict(BS);
|
|
84
|
-
return undefined;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
getOrCreateBorderStyle(): BorderStyle {
|
|
88
|
-
const BS = this.BS();
|
|
89
|
-
if (BS) return BorderStyle.fromDict(BS);
|
|
90
|
-
|
|
91
|
-
const bs = BorderStyle.fromDict(this.dict.context.obj({}));
|
|
92
|
-
this.dict.set(PDFName.of('BS'), bs.dict);
|
|
93
|
-
return bs;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
getOnValue(): PDFName | undefined {
|
|
97
|
-
const normal = this.getAppearances()?.normal;
|
|
98
|
-
|
|
99
|
-
if (normal instanceof PDFDict) {
|
|
100
|
-
const keys = normal.keys();
|
|
101
|
-
for (let idx = 0, len = keys.length; idx < len; idx++) {
|
|
102
|
-
const key = keys[idx];
|
|
103
|
-
if (key !== PDFName.of('Off')) return key;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
return undefined;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
export default PDFWidgetAnnotation;
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
const flag = (bitIndex: number) => 1 << bitIndex;
|
|
2
|
-
|
|
3
|
-
/** From PDF spec table 165 */
|
|
4
|
-
export enum AnnotationFlags {
|
|
5
|
-
/**
|
|
6
|
-
* If set, do not display the annotation if it does not belong to one of the
|
|
7
|
-
* standard annotation types and no annotation handler is available. If clear,
|
|
8
|
-
* display such an unknown annotation using an appearance stream specified by
|
|
9
|
-
* its appearance dictionary, if any.
|
|
10
|
-
*/
|
|
11
|
-
Invisible = flag(1 - 1),
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* If set, do not display or print the annotation or allow it to interact with
|
|
15
|
-
* the user, regardless of its annotation type or whether an annotation
|
|
16
|
-
* handler is available.
|
|
17
|
-
*
|
|
18
|
-
* In cases where screen space is limited, the ability to hide and show
|
|
19
|
-
* annotations selectively can be used in combination with appearance streams
|
|
20
|
-
* to display auxiliary pop-up information similar in function to online help
|
|
21
|
-
* systems.
|
|
22
|
-
*/
|
|
23
|
-
Hidden = flag(2 - 1),
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* If set, print the annotation when the page is printed. If clear, never
|
|
27
|
-
* print the annotation, regardless of whether it is displayed on the screen.
|
|
28
|
-
*
|
|
29
|
-
* This can be useful for annotations representing interactive pushbuttons,
|
|
30
|
-
* which would serve no meaningful purpose on the printed page.
|
|
31
|
-
*/
|
|
32
|
-
Print = flag(3 - 1),
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* If set, do not scale the annotation’s appearance to match the magnification
|
|
36
|
-
* of the page. The location of the annotation on the page (defined by the
|
|
37
|
-
* upper-left corner of its annotation rectangle) shall remain fixed,
|
|
38
|
-
* regardless of the page magnification.
|
|
39
|
-
*/
|
|
40
|
-
NoZoom = flag(4 - 1),
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* If set, do not rotate the annotation’s appearance to match the rotation of
|
|
44
|
-
* the page. The upper-left corner of the annotation rectangle shall remain in
|
|
45
|
-
* a fixed location on the page, regardless of the page rotation.
|
|
46
|
-
*/
|
|
47
|
-
NoRotate = flag(5 - 1),
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* If set, do not display the annotation on the screen or allow it to interact
|
|
51
|
-
* with the user. The annotation may be printed (depending on the setting of
|
|
52
|
-
* the Print flag) but should be considered hidden for purposes of on-screen
|
|
53
|
-
* display and user interaction.
|
|
54
|
-
*/
|
|
55
|
-
NoView = flag(6 - 1),
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* If set, do not allow the annotation to interact with the user. The
|
|
59
|
-
* annotation may be displayed or printed (depending on the settings of the
|
|
60
|
-
* NoView and Print flags) but should not respond to mouse clicks or change
|
|
61
|
-
* its appearance in response to mouse motions.
|
|
62
|
-
*
|
|
63
|
-
* This flag shall be ignored for widget annotations; its function is
|
|
64
|
-
* subsumed by the ReadOnly flag of the associated form field.
|
|
65
|
-
*/
|
|
66
|
-
ReadOnly = flag(7 - 1),
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* If set, do not allow the annotation to be deleted or its properties
|
|
70
|
-
* (including position and size) to be modified by the user. However, this
|
|
71
|
-
* flag does not restrict changes to the annotation’s contents, such as the
|
|
72
|
-
* value of a form field.
|
|
73
|
-
*/
|
|
74
|
-
Locked = flag(8 - 1),
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* If set, invert the interpretation of the NoView flag for certain events.
|
|
78
|
-
*
|
|
79
|
-
* A typical use is to have an annotation that appears only when a mouse
|
|
80
|
-
* cursor is held over it.
|
|
81
|
-
*/
|
|
82
|
-
ToggleNoView = flag(9 - 1),
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* If set, do not allow the contents of the annotation to be modified by the
|
|
86
|
-
* user. This flag does not restrict deletion of the annotation or changes to
|
|
87
|
-
* other annotation properties, such as position and size.
|
|
88
|
-
*/
|
|
89
|
-
LockedContents = flag(10 - 1),
|
|
90
|
-
}
|