@syncfusion/ej2-pdf 1.0.23 → 23.1.38
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/.eslintrc.json +260 -0
- package/.gitleaksignore +1 -0
- package/CHANGELOG.md +28 -0
- package/README.md +17 -0
- package/dist/ej2-pdf.umd.min.js +4 -14
- package/dist/ej2-pdf.umd.min.js.map +1 -11
- package/dist/es6/ej2-pdf.es2015.js +48372 -0
- package/dist/es6/ej2-pdf.es2015.js.map +1 -0
- package/dist/es6/ej2-pdf.es5.js +50250 -0
- package/dist/es6/ej2-pdf.es5.js.map +1 -0
- package/dist/global/ej2-pdf.min.js +11 -0
- package/dist/global/ej2-pdf.min.js.map +1 -0
- package/dist/global/index.d.ts +14 -0
- package/index.js +4 -8
- package/license +10 -3
- package/package.json +58 -16
- package/pdf.d.ts +4 -0
- package/pdf.js +4 -0
- package/src/global.js +1 -0
- package/src/index.d.ts +45 -98
- package/src/index.js +45 -96
- package/src/pdf/core/annotations/annotation-collection.d.ts +289 -0
- package/src/pdf/core/annotations/annotation-collection.js +755 -0
- package/src/pdf/core/annotations/annotation.d.ts +5865 -0
- package/src/pdf/core/annotations/annotation.js +14195 -0
- package/src/pdf/core/annotations/index.d.ts +4 -0
- package/src/pdf/core/annotations/index.js +4 -0
- package/src/pdf/core/annotations/pdf-appearance.d.ts +102 -0
- package/src/pdf/core/annotations/pdf-appearance.js +124 -0
- package/src/pdf/core/annotations/pdf-paddings.d.ts +8 -0
- package/src/pdf/core/annotations/pdf-paddings.js +22 -0
- package/src/pdf/core/base-stream.d.ts +86 -0
- package/src/pdf/core/base-stream.js +332 -0
- package/src/pdf/core/content-parser.d.ts +38 -0
- package/src/pdf/core/content-parser.js +359 -0
- package/src/pdf/core/decode-stream.d.ts +21 -0
- package/src/pdf/core/decode-stream.js +120 -0
- package/src/pdf/core/decrypt-stream.d.ts +11 -0
- package/src/pdf/core/decrypt-stream.js +53 -0
- package/src/pdf/core/enumerator.d.ts +1668 -0
- package/src/pdf/core/enumerator.js +1717 -0
- package/src/pdf/core/flate-stream.d.ts +13 -0
- package/src/pdf/core/flate-stream.js +329 -0
- package/src/pdf/core/fonts/index.d.ts +7 -0
- package/{dist/es6/implementation/graphics → src/pdf/core}/fonts/index.js +3 -4
- package/src/pdf/core/fonts/pdf-font-metrics.d.ts +66 -0
- package/src/pdf/core/fonts/pdf-font-metrics.js +192 -0
- package/src/pdf/core/fonts/pdf-standard-font.d.ts +1023 -0
- package/src/pdf/core/fonts/pdf-standard-font.js +1682 -0
- package/src/pdf/core/fonts/pdf-string-format.d.ts +236 -0
- package/src/pdf/core/fonts/pdf-string-format.js +213 -0
- package/src/pdf/core/fonts/string-layouter.d.ts +68 -0
- package/src/pdf/core/fonts/string-layouter.js +437 -0
- package/src/pdf/core/fonts/ttf-reader.d.ts +167 -0
- package/src/pdf/core/fonts/ttf-reader.js +1150 -0
- package/src/pdf/core/fonts/ttf-table.d.ts +132 -0
- package/src/pdf/core/fonts/ttf-table.js +74 -0
- package/src/pdf/core/fonts/unicode-true-type-font.d.ts +50 -0
- package/src/pdf/core/fonts/unicode-true-type-font.js +289 -0
- package/src/pdf/core/form/field.d.ts +3011 -0
- package/src/pdf/core/form/field.js +6828 -0
- package/src/pdf/core/form/form.d.ts +279 -0
- package/src/pdf/core/form/form.js +782 -0
- package/src/pdf/core/form/index.d.ts +2 -0
- package/src/pdf/core/form/index.js +2 -0
- package/src/pdf/core/graphics/images/image-decoder.d.ts +38 -0
- package/src/pdf/core/graphics/images/image-decoder.js +227 -0
- package/src/{implementation → pdf/core}/graphics/images/index.d.ts +0 -5
- package/{dist/es6/implementation → src/pdf/core}/graphics/images/index.js +0 -1
- package/src/pdf/core/graphics/images/pdf-bitmap.d.ts +73 -0
- package/src/pdf/core/graphics/images/pdf-bitmap.js +68 -0
- package/src/pdf/core/graphics/images/pdf-image.d.ts +201 -0
- package/src/pdf/core/graphics/images/pdf-image.js +201 -0
- package/src/pdf/core/graphics/index.d.ts +10 -0
- package/src/pdf/core/graphics/index.js +10 -0
- package/src/pdf/core/graphics/pdf-graphics.d.ts +956 -0
- package/src/pdf/core/graphics/pdf-graphics.js +1860 -0
- package/src/pdf/core/graphics/pdf-path.d.ts +34 -0
- package/src/pdf/core/graphics/pdf-path.js +177 -0
- package/src/pdf/core/graphics/pdf-stream-writer.d.ts +56 -0
- package/src/pdf/core/graphics/pdf-stream-writer.js +231 -0
- package/src/pdf/core/graphics/pdf-template.d.ts +79 -0
- package/src/pdf/core/graphics/pdf-template.js +100 -0
- package/src/pdf/core/graphics/rightToLeft/bidirectional.d.ts +69 -0
- package/src/pdf/core/graphics/rightToLeft/bidirectional.js +831 -0
- package/src/pdf/core/graphics/rightToLeft/index.d.ts +3 -0
- package/src/pdf/core/graphics/rightToLeft/index.js +3 -0
- package/src/pdf/core/graphics/rightToLeft/text-renderer.d.ts +13 -0
- package/src/pdf/core/graphics/rightToLeft/text-renderer.js +116 -0
- package/src/pdf/core/graphics/rightToLeft/text-shape.d.ts +48 -0
- package/src/pdf/core/graphics/rightToLeft/text-shape.js +289 -0
- package/src/pdf/core/import-export/fdf-document.d.ts +37 -0
- package/src/pdf/core/import-export/fdf-document.js +667 -0
- package/src/pdf/core/import-export/index.d.ts +5 -0
- package/src/pdf/core/import-export/index.js +5 -0
- package/src/pdf/core/import-export/json-document.d.ts +47 -0
- package/src/pdf/core/import-export/json-document.js +1547 -0
- package/src/pdf/core/import-export/xfdf-document.d.ts +146 -0
- package/src/pdf/core/import-export/xfdf-document.js +2920 -0
- package/src/pdf/core/import-export/xml-document.d.ts +14 -0
- package/src/pdf/core/import-export/xml-document.js +166 -0
- package/src/pdf/core/import-export/xml-writer.d.ts +69 -0
- package/src/pdf/core/import-export/xml-writer.js +494 -0
- package/src/pdf/core/pdf-catalog.d.ts +18 -0
- package/src/pdf/core/pdf-catalog.js +166 -0
- package/src/pdf/core/pdf-cross-reference.d.ts +80 -0
- package/src/pdf/core/pdf-cross-reference.js +1049 -0
- package/src/pdf/core/pdf-document.d.ts +821 -0
- package/src/pdf/core/pdf-document.js +1022 -0
- package/src/pdf/core/pdf-file-structure.d.ts +54 -0
- package/src/pdf/core/pdf-file-structure.js +65 -0
- package/src/pdf/core/pdf-outline.d.ts +362 -0
- package/src/pdf/core/pdf-outline.js +860 -0
- package/src/pdf/core/pdf-page.d.ts +589 -0
- package/src/pdf/core/pdf-page.js +1049 -0
- package/src/pdf/core/pdf-parser.d.ts +62 -0
- package/src/pdf/core/pdf-parser.js +1035 -0
- package/src/pdf/core/pdf-primitives.d.ts +87 -0
- package/src/pdf/core/pdf-primitives.js +305 -0
- package/src/pdf/core/predictor-stream.d.ts +15 -0
- package/src/pdf/core/predictor-stream.js +214 -0
- package/src/pdf/core/security/encryptor.d.ts +140 -0
- package/src/pdf/core/security/encryptor.js +1616 -0
- package/src/pdf/core/security/index.d.ts +1 -0
- package/src/pdf/core/security/index.js +1 -0
- package/src/pdf/core/utils.d.ts +686 -0
- package/src/pdf/core/utils.js +3625 -0
- package/src/pdf/index.d.ts +44 -0
- package/src/pdf/index.js +44 -0
- package/tslint.json +111 -0
- package/ReadMe.md +0 -13
- package/dist/es6/implementation/actions/action.js +0 -44
- package/dist/es6/implementation/actions/index.js +0 -2
- package/dist/es6/implementation/actions/uri-action.js +0 -38
- package/dist/es6/implementation/annotations/action-link-annotation.js +0 -29
- package/dist/es6/implementation/annotations/annotation-collection.js +0 -93
- package/dist/es6/implementation/annotations/annotation.js +0 -156
- package/dist/es6/implementation/annotations/document-link-annotation.js +0 -48
- package/dist/es6/implementation/annotations/index.js +0 -7
- package/dist/es6/implementation/annotations/link-annotation.js +0 -31
- package/dist/es6/implementation/annotations/pdf-text-web-link.js +0 -178
- package/dist/es6/implementation/annotations/uri-annotation.js +0 -64
- package/dist/es6/implementation/collections/dictionary.js +0 -71
- package/dist/es6/implementation/collections/index.js +0 -3
- package/dist/es6/implementation/collections/object-object-pair/dictionary.js +0 -84
- package/dist/es6/implementation/collections/object-object-pair/index.js +0 -1
- package/dist/es6/implementation/collections/utils.js +0 -8
- package/dist/es6/implementation/document/automatic-fields/automatic-field-info-collection.js +0 -17
- package/dist/es6/implementation/document/automatic-fields/automatic-field-info.js +0 -68
- package/dist/es6/implementation/document/automatic-fields/automatic-field.js +0 -145
- package/dist/es6/implementation/document/automatic-fields/composite-field.js +0 -61
- package/dist/es6/implementation/document/automatic-fields/index.js +0 -7
- package/dist/es6/implementation/document/automatic-fields/multiple-value-field.js +0 -36
- package/dist/es6/implementation/document/automatic-fields/page-count-field.js +0 -53
- package/dist/es6/implementation/document/automatic-fields/pdf-numbers-convertor.js +0 -91
- package/dist/es6/implementation/document/automatic-fields/pdf-page-number-field.js +0 -56
- package/dist/es6/implementation/document/automatic-fields/pdf-template-value-pair.js +0 -34
- package/dist/es6/implementation/document/automatic-fields/single-value-field.js +0 -47
- package/dist/es6/implementation/document/index.js +0 -11
- package/dist/es6/implementation/document/pdf-catalog.js +0 -38
- package/dist/es6/implementation/document/pdf-document-base.js +0 -71
- package/dist/es6/implementation/document/pdf-document-template.js +0 -204
- package/dist/es6/implementation/document/pdf-document.js +0 -175
- package/dist/es6/implementation/drawing/index.js +0 -1
- package/dist/es6/implementation/drawing/pdf-drawing.js +0 -80
- package/dist/es6/implementation/general/enum.js +0 -6
- package/dist/es6/implementation/general/index.js +0 -3
- package/dist/es6/implementation/general/pdf-cache-collection.js +0 -24
- package/dist/es6/implementation/general/pdf-collection.js +0 -26
- package/dist/es6/implementation/general/pdf-destination.js +0 -107
- package/dist/es6/implementation/graphics/brushes/index.js +0 -2
- package/dist/es6/implementation/graphics/brushes/pdf-brush.js +0 -6
- package/dist/es6/implementation/graphics/brushes/pdf-solid-brush.js +0 -53
- package/dist/es6/implementation/graphics/constants.js +0 -11
- package/dist/es6/implementation/graphics/enum.js +0 -100
- package/dist/es6/implementation/graphics/figures/base/element-layouter.js +0 -154
- package/dist/es6/implementation/graphics/figures/base/graphics-element.js +0 -18
- package/dist/es6/implementation/graphics/figures/base/index.js +0 -3
- package/dist/es6/implementation/graphics/figures/base/pdf-shape-element.js +0 -32
- package/dist/es6/implementation/graphics/figures/base/shape-layouter.js +0 -55
- package/dist/es6/implementation/graphics/figures/base/text-layouter.js +0 -123
- package/dist/es6/implementation/graphics/figures/enum.js +0 -11
- package/dist/es6/implementation/graphics/figures/index.js +0 -5
- package/dist/es6/implementation/graphics/figures/layout-element.js +0 -41
- package/dist/es6/implementation/graphics/figures/pdf-template.js +0 -110
- package/dist/es6/implementation/graphics/figures/text-element.js +0 -298
- package/dist/es6/implementation/graphics/fonts/enum.js +0 -45
- package/dist/es6/implementation/graphics/fonts/pdf-font-metrics.js +0 -122
- package/dist/es6/implementation/graphics/fonts/pdf-font.js +0 -159
- package/dist/es6/implementation/graphics/fonts/pdf-standard-font-metrics-factory.js +0 -357
- package/dist/es6/implementation/graphics/fonts/pdf-standard-font.js +0 -124
- package/dist/es6/implementation/graphics/fonts/pdf-string-format.js +0 -239
- package/dist/es6/implementation/graphics/fonts/string-layouter.js +0 -335
- package/dist/es6/implementation/graphics/fonts/string-tokenizer.js +0 -162
- package/dist/es6/implementation/graphics/images/byte-array.js +0 -82
- package/dist/es6/implementation/graphics/images/image-decoder.js +0 -167
- package/dist/es6/implementation/graphics/images/pdf-bitmap.js +0 -41
- package/dist/es6/implementation/graphics/images/pdf-image.js +0 -68
- package/dist/es6/implementation/graphics/index.js +0 -20
- package/dist/es6/implementation/graphics/pdf-color.js +0 -205
- package/dist/es6/implementation/graphics/pdf-graphics.js +0 -1034
- package/dist/es6/implementation/graphics/pdf-margins.js +0 -75
- package/dist/es6/implementation/graphics/pdf-pen.js +0 -180
- package/dist/es6/implementation/graphics/pdf-resources.js +0 -223
- package/dist/es6/implementation/graphics/pdf-transformation-matrix.js +0 -134
- package/dist/es6/implementation/graphics/pdf-transparency.js +0 -22
- package/dist/es6/implementation/graphics/unit-convertor.js +0 -33
- package/dist/es6/implementation/index.js +0 -85
- package/dist/es6/implementation/input-output/cross-table.js +0 -6
- package/dist/es6/implementation/input-output/enum.js +0 -5
- package/dist/es6/implementation/input-output/index.js +0 -8
- package/dist/es6/implementation/input-output/pdf-cross-table.js +0 -346
- package/dist/es6/implementation/input-output/pdf-dictionary-properties.js +0 -60
- package/dist/es6/implementation/input-output/pdf-main-object-collection.js +0 -115
- package/dist/es6/implementation/input-output/pdf-operators.js +0 -75
- package/dist/es6/implementation/input-output/pdf-stream-writer.js +0 -364
- package/dist/es6/implementation/input-output/pdf-writer.js +0 -44
- package/dist/es6/implementation/pages/enum.js +0 -51
- package/dist/es6/implementation/pages/index.js +0 -13
- package/dist/es6/implementation/pages/page-added-event-arguments.js +0 -19
- package/dist/es6/implementation/pages/pdf-document-page-collection.js +0 -120
- package/dist/es6/implementation/pages/pdf-page-base.js +0 -104
- package/dist/es6/implementation/pages/pdf-page-layer-collection.js +0 -115
- package/dist/es6/implementation/pages/pdf-page-layer.js +0 -160
- package/dist/es6/implementation/pages/pdf-page-settings.js +0 -126
- package/dist/es6/implementation/pages/pdf-page-size.js +0 -36
- package/dist/es6/implementation/pages/pdf-page-template-element.js +0 -510
- package/dist/es6/implementation/pages/pdf-page.js +0 -130
- package/dist/es6/implementation/pages/pdf-section-collection.js +0 -95
- package/dist/es6/implementation/pages/pdf-section-page-collection.js +0 -30
- package/dist/es6/implementation/pages/pdf-section-templates.js +0 -71
- package/dist/es6/implementation/pages/pdf-section.js +0 -388
- package/dist/es6/implementation/primitives/index.js +0 -8
- package/dist/es6/implementation/primitives/pdf-array.js +0 -199
- package/dist/es6/implementation/primitives/pdf-boolean.js +0 -66
- package/dist/es6/implementation/primitives/pdf-dictionary.js +0 -220
- package/dist/es6/implementation/primitives/pdf-name.js +0 -102
- package/dist/es6/implementation/primitives/pdf-number.js +0 -94
- package/dist/es6/implementation/primitives/pdf-reference.js +0 -195
- package/dist/es6/implementation/primitives/pdf-stream.js +0 -149
- package/dist/es6/implementation/primitives/pdf-string.js +0 -143
- package/dist/es6/implementation/structured-elements/grid/index.js +0 -1
- package/dist/es6/implementation/structured-elements/grid/pdf-grid-cell.js +0 -512
- package/dist/es6/implementation/structured-elements/grid/pdf-grid-column.js +0 -125
- package/dist/es6/implementation/structured-elements/grid/pdf-grid-row.js +0 -244
- package/dist/es6/implementation/structured-elements/grid/pdf-grid.js +0 -989
- package/dist/es6/implementation/structured-elements/grid/styles/index.js +0 -2
- package/dist/es6/implementation/structured-elements/grid/styles/pdf-borders.js +0 -145
- package/dist/es6/implementation/structured-elements/grid/styles/style.js +0 -267
- package/dist/es6/implementation/structured-elements/index.js +0 -1
- package/dist/es6/implementation/structured-elements/tables/light-tables/enum.js +0 -5
- package/dist/es6/index.js +0 -89
- package/dist/es6/interfaces/i-pdf-cache.js +0 -1
- package/dist/es6/interfaces/i-pdf-changable.js +0 -1
- package/dist/es6/interfaces/i-pdf-primitives.js +0 -1
- package/dist/es6/interfaces/i-pdf-wrapper.js +0 -1
- package/dist/es6/interfaces/i-pdf-writer.js +0 -1
- package/dist/es6/interfaces/index.js +0 -1
- package/dist/global/ej2-pdf-export.js +0 -15979
- package/implementation.d.ts +0 -4
- package/implementation.js +0 -8
- package/interfaces.d.ts +0 -4
- package/interfaces.js +0 -4
- package/src/implementation/actions/action.d.ts +0 -50
- package/src/implementation/actions/action.js +0 -44
- package/src/implementation/actions/index.d.ts +0 -6
- package/src/implementation/actions/index.js +0 -9
- package/src/implementation/actions/uri-action.d.ts +0 -33
- package/src/implementation/actions/uri-action.js +0 -39
- package/src/implementation/annotations/action-link-annotation.d.ts +0 -30
- package/src/implementation/annotations/action-link-annotation.js +0 -32
- package/src/implementation/annotations/annotation-collection.d.ts +0 -77
- package/src/implementation/annotations/annotation-collection.js +0 -91
- package/src/implementation/annotations/annotation.d.ts +0 -152
- package/src/implementation/annotations/annotation.js +0 -146
- package/src/implementation/annotations/document-link-annotation.d.ts +0 -89
- package/src/implementation/annotations/document-link-annotation.js +0 -51
- package/src/implementation/annotations/index.d.ts +0 -11
- package/src/implementation/annotations/index.js +0 -14
- package/src/implementation/annotations/link-annotation.d.ts +0 -23
- package/src/implementation/annotations/link-annotation.js +0 -33
- package/src/implementation/annotations/pdf-text-web-link.d.ts +0 -118
- package/src/implementation/annotations/pdf-text-web-link.js +0 -173
- package/src/implementation/annotations/uri-annotation.d.ts +0 -48
- package/src/implementation/annotations/uri-annotation.js +0 -65
- package/src/implementation/collections/dictionary.d.ts +0 -76
- package/src/implementation/collections/dictionary.js +0 -74
- package/src/implementation/collections/index.d.ts +0 -7
- package/src/implementation/collections/index.js +0 -10
- package/src/implementation/collections/object-object-pair/dictionary.d.ts +0 -62
- package/src/implementation/collections/object-object-pair/dictionary.js +0 -88
- package/src/implementation/collections/object-object-pair/index.d.ts +0 -5
- package/src/implementation/collections/object-object-pair/index.js +0 -8
- package/src/implementation/collections/utils.d.ts +0 -27
- package/src/implementation/collections/utils.js +0 -13
- package/src/implementation/document/automatic-fields/automatic-field-info-collection.d.ts +0 -31
- package/src/implementation/document/automatic-fields/automatic-field-info-collection.js +0 -21
- package/src/implementation/document/automatic-fields/automatic-field-info.d.ts +0 -67
- package/src/implementation/document/automatic-fields/automatic-field-info.js +0 -70
- package/src/implementation/document/automatic-fields/automatic-field.d.ts +0 -41
- package/src/implementation/document/automatic-fields/automatic-field.js +0 -143
- package/src/implementation/document/automatic-fields/composite-field.d.ts +0 -46
- package/src/implementation/document/automatic-fields/composite-field.js +0 -64
- package/src/implementation/document/automatic-fields/index.d.ts +0 -11
- package/src/implementation/document/automatic-fields/index.js +0 -14
- package/src/implementation/document/automatic-fields/multiple-value-field.d.ts +0 -18
- package/src/implementation/document/automatic-fields/multiple-value-field.js +0 -35
- package/src/implementation/document/automatic-fields/page-count-field.d.ts +0 -44
- package/src/implementation/document/automatic-fields/page-count-field.js +0 -53
- package/src/implementation/document/automatic-fields/pdf-numbers-convertor.d.ts +0 -53
- package/src/implementation/document/automatic-fields/pdf-numbers-convertor.js +0 -94
- package/src/implementation/document/automatic-fields/pdf-page-number-field.d.ts +0 -51
- package/src/implementation/document/automatic-fields/pdf-page-number-field.js +0 -56
- package/src/implementation/document/automatic-fields/pdf-template-value-pair.d.ts +0 -38
- package/src/implementation/document/automatic-fields/pdf-template-value-pair.js +0 -38
- package/src/implementation/document/automatic-fields/single-value-field.d.ts +0 -15
- package/src/implementation/document/automatic-fields/single-value-field.js +0 -46
- package/src/implementation/document/index.d.ts +0 -15
- package/src/implementation/document/index.js +0 -18
- package/src/implementation/document/pdf-catalog.d.ts +0 -32
- package/src/implementation/document/pdf-catalog.js +0 -38
- package/src/implementation/document/pdf-document-base.d.ts +0 -117
- package/src/implementation/document/pdf-document-base.js +0 -72
- package/src/implementation/document/pdf-document-template.d.ts +0 -166
- package/src/implementation/document/pdf-document-template.js +0 -207
- package/src/implementation/document/pdf-document.d.ts +0 -206
- package/src/implementation/document/pdf-document.js +0 -166
- package/src/implementation/drawing/index.d.ts +0 -5
- package/src/implementation/drawing/index.js +0 -8
- package/src/implementation/drawing/pdf-drawing.d.ts +0 -93
- package/src/implementation/drawing/pdf-drawing.js +0 -84
- package/src/implementation/general/enum.d.ts +0 -21
- package/src/implementation/general/enum.js +0 -10
- package/src/implementation/general/index.d.ts +0 -7
- package/src/implementation/general/index.js +0 -10
- package/src/implementation/general/pdf-cache-collection.d.ts +0 -33
- package/src/implementation/general/pdf-cache-collection.js +0 -27
- package/src/implementation/general/pdf-collection.d.ts +0 -26
- package/src/implementation/general/pdf-collection.js +0 -30
- package/src/implementation/general/pdf-destination.d.ts +0 -103
- package/src/implementation/general/pdf-destination.js +0 -103
- package/src/implementation/graphics/brushes/index.d.ts +0 -6
- package/src/implementation/graphics/brushes/index.js +0 -9
- package/src/implementation/graphics/brushes/pdf-brush.d.ts +0 -55
- package/src/implementation/graphics/brushes/pdf-brush.js +0 -10
- package/src/implementation/graphics/brushes/pdf-solid-brush.d.ts +0 -77
- package/src/implementation/graphics/brushes/pdf-solid-brush.js +0 -54
- package/src/implementation/graphics/constants.d.ts +0 -31
- package/src/implementation/graphics/constants.js +0 -15
- package/src/implementation/graphics/enum.d.ts +0 -392
- package/src/implementation/graphics/enum.js +0 -104
- package/src/implementation/graphics/figures/base/element-layouter.d.ts +0 -160
- package/src/implementation/graphics/figures/base/element-layouter.js +0 -156
- package/src/implementation/graphics/figures/base/graphics-element.d.ts +0 -16
- package/src/implementation/graphics/figures/base/graphics-element.js +0 -22
- package/src/implementation/graphics/figures/base/index.d.ts +0 -7
- package/src/implementation/graphics/figures/base/index.js +0 -10
- package/src/implementation/graphics/figures/base/pdf-shape-element.d.ts +0 -28
- package/src/implementation/graphics/figures/base/pdf-shape-element.js +0 -34
- package/src/implementation/graphics/figures/base/shape-layouter.d.ts +0 -80
- package/src/implementation/graphics/figures/base/shape-layouter.js +0 -57
- package/src/implementation/graphics/figures/base/text-layouter.d.ts +0 -107
- package/src/implementation/graphics/figures/base/text-layouter.js +0 -121
- package/src/implementation/graphics/figures/enum.d.ts +0 -37
- package/src/implementation/graphics/figures/enum.js +0 -15
- package/src/implementation/graphics/figures/index.d.ts +0 -9
- package/src/implementation/graphics/figures/index.js +0 -12
- package/src/implementation/graphics/figures/layout-element.d.ts +0 -57
- package/src/implementation/graphics/figures/layout-element.js +0 -43
- package/src/implementation/graphics/figures/pdf-template.d.ts +0 -113
- package/src/implementation/graphics/figures/pdf-template.js +0 -106
- package/src/implementation/graphics/figures/text-element.d.ts +0 -213
- package/src/implementation/graphics/figures/text-element.js +0 -289
- package/src/implementation/graphics/fonts/enum.d.ts +0 -179
- package/src/implementation/graphics/fonts/enum.js +0 -49
- package/src/implementation/graphics/fonts/index.d.ts +0 -12
- package/src/implementation/graphics/fonts/index.js +0 -15
- package/src/implementation/graphics/fonts/pdf-font-metrics.d.ts +0 -160
- package/src/implementation/graphics/fonts/pdf-font-metrics.js +0 -123
- package/src/implementation/graphics/fonts/pdf-font.d.ts +0 -187
- package/src/implementation/graphics/fonts/pdf-font.js +0 -158
- package/src/implementation/graphics/fonts/pdf-standard-font-metrics-factory.d.ts +0 -301
- package/src/implementation/graphics/fonts/pdf-standard-font-metrics-factory.js +0 -359
- package/src/implementation/graphics/fonts/pdf-standard-font.d.ts +0 -143
- package/src/implementation/graphics/fonts/pdf-standard-font.js +0 -121
- package/src/implementation/graphics/fonts/pdf-string-format.d.ts +0 -319
- package/src/implementation/graphics/fonts/pdf-string-format.js +0 -241
- package/src/implementation/graphics/fonts/string-layouter.d.ts +0 -255
- package/src/implementation/graphics/fonts/string-layouter.js +0 -336
- package/src/implementation/graphics/fonts/string-tokenizer.d.ts +0 -107
- package/src/implementation/graphics/fonts/string-tokenizer.js +0 -166
- package/src/implementation/graphics/images/byte-array.d.ts +0 -68
- package/src/implementation/graphics/images/byte-array.js +0 -86
- package/src/implementation/graphics/images/image-decoder.d.ts +0 -227
- package/src/implementation/graphics/images/image-decoder.js +0 -164
- package/src/implementation/graphics/images/index.js +0 -11
- package/src/implementation/graphics/images/pdf-bitmap.d.ts +0 -90
- package/src/implementation/graphics/images/pdf-bitmap.js +0 -41
- package/src/implementation/graphics/images/pdf-image.d.ts +0 -88
- package/src/implementation/graphics/images/pdf-image.js +0 -69
- package/src/implementation/graphics/index.d.ts +0 -24
- package/src/implementation/graphics/index.js +0 -27
- package/src/implementation/graphics/pdf-color.d.ts +0 -170
- package/src/implementation/graphics/pdf-color.js +0 -204
- package/src/implementation/graphics/pdf-graphics.d.ts +0 -1085
- package/src/implementation/graphics/pdf-graphics.js +0 -1017
- package/src/implementation/graphics/pdf-margins.d.ts +0 -82
- package/src/implementation/graphics/pdf-margins.js +0 -79
- package/src/implementation/graphics/pdf-pen.d.ts +0 -237
- package/src/implementation/graphics/pdf-pen.js +0 -181
- package/src/implementation/graphics/pdf-resources.d.ts +0 -147
- package/src/implementation/graphics/pdf-resources.js +0 -215
- package/src/implementation/graphics/pdf-transformation-matrix.d.ts +0 -143
- package/src/implementation/graphics/pdf-transformation-matrix.js +0 -136
- package/src/implementation/graphics/pdf-transparency.d.ts +0 -34
- package/src/implementation/graphics/pdf-transparency.js +0 -22
- package/src/implementation/graphics/unit-convertor.d.ts +0 -72
- package/src/implementation/graphics/unit-convertor.js +0 -37
- package/src/implementation/index.d.ts +0 -89
- package/src/implementation/index.js +0 -92
- package/src/implementation/input-output/cross-table.d.ts +0 -21
- package/src/implementation/input-output/cross-table.js +0 -10
- package/src/implementation/input-output/enum.d.ts +0 -16
- package/src/implementation/input-output/enum.js +0 -9
- package/src/implementation/input-output/index.d.ts +0 -12
- package/src/implementation/input-output/index.js +0 -15
- package/src/implementation/input-output/pdf-cross-table.d.ts +0 -249
- package/src/implementation/input-output/pdf-cross-table.js +0 -340
- package/src/implementation/input-output/pdf-dictionary-properties.d.ts +0 -283
- package/src/implementation/input-output/pdf-dictionary-properties.js +0 -64
- package/src/implementation/input-output/pdf-main-object-collection.d.ts +0 -120
- package/src/implementation/input-output/pdf-main-object-collection.js +0 -117
- package/src/implementation/input-output/pdf-operators.d.ts +0 -352
- package/src/implementation/input-output/pdf-operators.js +0 -79
- package/src/implementation/input-output/pdf-stream-writer.d.ts +0 -314
- package/src/implementation/input-output/pdf-stream-writer.js +0 -363
- package/src/implementation/input-output/pdf-writer.d.ts +0 -68
- package/src/implementation/input-output/pdf-writer.js +0 -48
- package/src/implementation/pages/enum.d.ts +0 -201
- package/src/implementation/pages/enum.js +0 -55
- package/src/implementation/pages/index.d.ts +0 -17
- package/src/implementation/pages/index.js +0 -20
- package/src/implementation/pages/page-added-event-arguments.d.ts +0 -30
- package/src/implementation/pages/page-added-event-arguments.js +0 -23
- package/src/implementation/pages/pdf-document-page-collection.d.ts +0 -92
- package/src/implementation/pages/pdf-document-page-collection.js +0 -121
- package/src/implementation/pages/pdf-page-base.d.ts +0 -121
- package/src/implementation/pages/pdf-page-base.js +0 -104
- package/src/implementation/pages/pdf-page-layer-collection.d.ts +0 -99
- package/src/implementation/pages/pdf-page-layer-collection.js +0 -113
- package/src/implementation/pages/pdf-page-layer.d.ts +0 -160
- package/src/implementation/pages/pdf-page-layer.js +0 -159
- package/src/implementation/pages/pdf-page-settings.d.ts +0 -111
- package/src/implementation/pages/pdf-page-settings.js +0 -126
- package/src/implementation/pages/pdf-page-size.d.ts +0 -159
- package/src/implementation/pages/pdf-page-size.js +0 -39
- package/src/implementation/pages/pdf-page-template-element.d.ts +0 -230
- package/src/implementation/pages/pdf-page-template-element.js +0 -509
- package/src/implementation/pages/pdf-page.d.ts +0 -153
- package/src/implementation/pages/pdf-page.js +0 -127
- package/src/implementation/pages/pdf-section-collection.d.ts +0 -109
- package/src/implementation/pages/pdf-section-collection.js +0 -91
- package/src/implementation/pages/pdf-section-page-collection.d.ts +0 -41
- package/src/implementation/pages/pdf-section-page-collection.js +0 -34
- package/src/implementation/pages/pdf-section-templates.d.ts +0 -64
- package/src/implementation/pages/pdf-section-templates.js +0 -74
- package/src/implementation/pages/pdf-section.d.ts +0 -319
- package/src/implementation/pages/pdf-section.js +0 -379
- package/src/implementation/primitives/index.d.ts +0 -12
- package/src/implementation/primitives/index.js +0 -15
- package/src/implementation/primitives/pdf-array.d.ts +0 -186
- package/src/implementation/primitives/pdf-array.js +0 -201
- package/src/implementation/primitives/pdf-boolean.d.ts +0 -84
- package/src/implementation/primitives/pdf-boolean.js +0 -70
- package/src/implementation/primitives/pdf-dictionary.d.ts +0 -311
- package/src/implementation/primitives/pdf-dictionary.js +0 -220
- package/src/implementation/primitives/pdf-name.d.ts +0 -121
- package/src/implementation/primitives/pdf-name.js +0 -106
- package/src/implementation/primitives/pdf-number.d.ts +0 -104
- package/src/implementation/primitives/pdf-number.js +0 -98
- package/src/implementation/primitives/pdf-reference.d.ts +0 -222
- package/src/implementation/primitives/pdf-reference.js +0 -192
- package/src/implementation/primitives/pdf-stream.d.ts +0 -111
- package/src/implementation/primitives/pdf-stream.js +0 -146
- package/src/implementation/primitives/pdf-string.d.ts +0 -212
- package/src/implementation/primitives/pdf-string.js +0 -147
- package/src/implementation/structured-elements/grid/index.d.ts +0 -0
- package/src/implementation/structured-elements/grid/index.js +0 -1
- package/src/implementation/structured-elements/grid/pdf-grid-cell.d.ts +0 -248
- package/src/implementation/structured-elements/grid/pdf-grid-cell.js +0 -504
- package/src/implementation/structured-elements/grid/pdf-grid-column.d.ts +0 -108
- package/src/implementation/structured-elements/grid/pdf-grid-column.js +0 -127
- package/src/implementation/structured-elements/grid/pdf-grid-row.d.ts +0 -207
- package/src/implementation/structured-elements/grid/pdf-grid-row.js +0 -246
- package/src/implementation/structured-elements/grid/pdf-grid.d.ts +0 -678
- package/src/implementation/structured-elements/grid/pdf-grid.js +0 -982
- package/src/implementation/structured-elements/grid/styles/index.d.ts +0 -5
- package/src/implementation/structured-elements/grid/styles/index.js +0 -9
- package/src/implementation/structured-elements/grid/styles/pdf-borders.d.ts +0 -126
- package/src/implementation/structured-elements/grid/styles/pdf-borders.js +0 -146
- package/src/implementation/structured-elements/grid/styles/style.d.ts +0 -250
- package/src/implementation/structured-elements/grid/styles/style.js +0 -269
- package/src/implementation/structured-elements/index.d.ts +0 -0
- package/src/implementation/structured-elements/index.js +0 -1
- package/src/implementation/structured-elements/tables/light-tables/enum.d.ts +0 -16
- package/src/implementation/structured-elements/tables/light-tables/enum.js +0 -9
- package/src/interfaces/i-pdf-cache.d.ts +0 -23
- package/src/interfaces/i-pdf-cache.js +0 -4
- package/src/interfaces/i-pdf-changable.d.ts +0 -17
- package/src/interfaces/i-pdf-changable.js +0 -4
- package/src/interfaces/i-pdf-primitives.d.ts +0 -45
- package/src/interfaces/i-pdf-primitives.js +0 -4
- package/src/interfaces/i-pdf-wrapper.d.ts +0 -13
- package/src/interfaces/i-pdf-wrapper.js +0 -4
- package/src/interfaces/i-pdf-writer.d.ts +0 -29
- package/src/interfaces/i-pdf-writer.js +0 -4
- package/src/interfaces/index.d.ts +0 -9
- package/src/interfaces/index.js +0 -4
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { _PdfStream } from './../../base-stream';
|
|
2
|
+
import { _PdfDictionary } from './../../pdf-primitives';
|
|
3
|
+
import { _ImageFormat } from './../../enumerator';
|
|
4
|
+
export declare class _ImageDecoder {
|
|
5
|
+
_stream: Uint8Array;
|
|
6
|
+
_format: _ImageFormat;
|
|
7
|
+
_height: number;
|
|
8
|
+
_width: number;
|
|
9
|
+
_bitsPerComponent: number;
|
|
10
|
+
_imageData: Uint8Array;
|
|
11
|
+
_imageStream: _PdfStream;
|
|
12
|
+
_position: number;
|
|
13
|
+
_noOfComponents: number;
|
|
14
|
+
static _jpegHeader: number[];
|
|
15
|
+
/**
|
|
16
|
+
* Initializes a new instance of the `_ImageDecoder` class.
|
|
17
|
+
*
|
|
18
|
+
* @private
|
|
19
|
+
* @param {Uint8Array} stream byte array.
|
|
20
|
+
*/
|
|
21
|
+
constructor(stream: Uint8Array);
|
|
22
|
+
readonly _imageDataAsNumberArray: ArrayBuffer;
|
|
23
|
+
_initialize(): void;
|
|
24
|
+
_reset(): void;
|
|
25
|
+
_parseJpegImage(): void;
|
|
26
|
+
_checkIfJpeg(): boolean;
|
|
27
|
+
_read(buffer: Uint8Array, offset: number, count: number): void;
|
|
28
|
+
_getBuffer(index: number): number;
|
|
29
|
+
_getImageDictionary(): _PdfStream;
|
|
30
|
+
_getColorSpace(): string;
|
|
31
|
+
_getDecodeParams(): _PdfDictionary;
|
|
32
|
+
_seek(length: number): void;
|
|
33
|
+
_readByte(): number;
|
|
34
|
+
_skipStream(): void;
|
|
35
|
+
_readExceededJpegImage(): void;
|
|
36
|
+
_toUnsigned16(value: number): number;
|
|
37
|
+
_getMarker(): number;
|
|
38
|
+
}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { _PdfStream } from './../../base-stream';
|
|
2
|
+
import { _PdfDictionary, _PdfName } from './../../pdf-primitives';
|
|
3
|
+
import { _ImageFormat } from './../../enumerator';
|
|
4
|
+
var _ImageDecoder = /** @class */ (function () {
|
|
5
|
+
/**
|
|
6
|
+
* Initializes a new instance of the `_ImageDecoder` class.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
* @param {Uint8Array} stream byte array.
|
|
10
|
+
*/
|
|
11
|
+
function _ImageDecoder(stream) {
|
|
12
|
+
this._format = _ImageFormat.unknown;
|
|
13
|
+
this._height = 0;
|
|
14
|
+
this._width = 0;
|
|
15
|
+
this._bitsPerComponent = 8;
|
|
16
|
+
this._position = 0;
|
|
17
|
+
this._noOfComponents = -1;
|
|
18
|
+
this._stream = stream;
|
|
19
|
+
this._initialize();
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(_ImageDecoder.prototype, "_imageDataAsNumberArray", {
|
|
22
|
+
get: function () {
|
|
23
|
+
return this._imageData;
|
|
24
|
+
},
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true
|
|
27
|
+
});
|
|
28
|
+
_ImageDecoder.prototype._initialize = function () {
|
|
29
|
+
if (this._format === _ImageFormat.unknown && this._checkIfJpeg()) {
|
|
30
|
+
this._format = _ImageFormat.jpeg;
|
|
31
|
+
this._parseJpegImage();
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
throw new TypeError('Only the JPEG format is supported');
|
|
35
|
+
}
|
|
36
|
+
this._reset();
|
|
37
|
+
this._imageData = new Uint8Array(this._stream.byteLength);
|
|
38
|
+
this._read(this._imageData, 0, this._imageData.byteLength);
|
|
39
|
+
};
|
|
40
|
+
_ImageDecoder.prototype._reset = function () {
|
|
41
|
+
this._position = 0;
|
|
42
|
+
};
|
|
43
|
+
_ImageDecoder.prototype._parseJpegImage = function () {
|
|
44
|
+
this._reset();
|
|
45
|
+
var imgData = new Uint8Array(this._stream.byteLength);
|
|
46
|
+
this._read(imgData, 0, imgData.byteLength);
|
|
47
|
+
var i = 4;
|
|
48
|
+
var length = this._getBuffer(i) * 256 + this._getBuffer(i + 1);
|
|
49
|
+
var isLengthExceed = false;
|
|
50
|
+
while (i < imgData.byteLength) {
|
|
51
|
+
i += length;
|
|
52
|
+
if (i < imgData.byteLength) {
|
|
53
|
+
if (this._getBuffer(i + 1) === 192) {
|
|
54
|
+
this._height = this._getBuffer(i + 5) * 256 + this._getBuffer(i + 6);
|
|
55
|
+
this._width = this._getBuffer(i + 7) * 256 + this._getBuffer(i + 8);
|
|
56
|
+
this._noOfComponents = this._getBuffer(i + 9);
|
|
57
|
+
if (this._width !== 0 && this._height !== 0) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
i += 2;
|
|
63
|
+
length = this._getBuffer(i) * 256 + this._getBuffer(i + 1);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
isLengthExceed = true;
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
if (isLengthExceed) {
|
|
72
|
+
this._reset();
|
|
73
|
+
this._seek(2);
|
|
74
|
+
this._readExceededJpegImage();
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
_ImageDecoder.prototype._checkIfJpeg = function () {
|
|
78
|
+
this._reset();
|
|
79
|
+
for (var i = 0; i < _ImageDecoder._jpegHeader.length; i++) {
|
|
80
|
+
if (_ImageDecoder._jpegHeader[Number.parseInt(i.toString(), 10)] !== this._getBuffer(i)) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
this._position++;
|
|
84
|
+
}
|
|
85
|
+
return true;
|
|
86
|
+
};
|
|
87
|
+
_ImageDecoder.prototype._read = function (buffer, offset, count) {
|
|
88
|
+
for (var index = offset; index < count; index++) {
|
|
89
|
+
var position = this._position;
|
|
90
|
+
buffer[Number.parseInt(index.toString(), 10)] = this._getBuffer(position);
|
|
91
|
+
this._position++;
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
_ImageDecoder.prototype._getBuffer = function (index) {
|
|
95
|
+
return this._stream[Number.parseInt(index.toString(), 10)];
|
|
96
|
+
};
|
|
97
|
+
_ImageDecoder.prototype._getImageDictionary = function () {
|
|
98
|
+
var data = []; // eslint-disable-line
|
|
99
|
+
this._imageStream = new _PdfStream(data, new _PdfDictionary());
|
|
100
|
+
this._imageStream.isImageStream = true;
|
|
101
|
+
var tempString = '';
|
|
102
|
+
var decodedString = '';
|
|
103
|
+
for (var i = 0; i < this._imageDataAsNumberArray.byteLength; i++) {
|
|
104
|
+
tempString += ' ' + String.fromCharCode(this._getBuffer(i));
|
|
105
|
+
}
|
|
106
|
+
for (var i = 0; i < tempString.length; i++) {
|
|
107
|
+
if (i % 2 !== 0) {
|
|
108
|
+
decodedString += tempString[Number.parseInt(i.toString(), 10)];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
this._imageStream.data = [decodedString];
|
|
112
|
+
this._imageStream._isCompress = false;
|
|
113
|
+
var dictionary = new _PdfDictionary();
|
|
114
|
+
dictionary.set('Type', new _PdfName('XObject'));
|
|
115
|
+
dictionary.set('Subtype', new _PdfName('Image'));
|
|
116
|
+
dictionary.set('Width', this._width);
|
|
117
|
+
dictionary.set('Height', this._height);
|
|
118
|
+
dictionary.set('BitsPerComponent', this._bitsPerComponent);
|
|
119
|
+
dictionary.set('Filter', new _PdfName('DCTDecode'));
|
|
120
|
+
dictionary.set('ColorSpace', new _PdfName(this._getColorSpace()));
|
|
121
|
+
dictionary.set('DecodeParms', this._getDecodeParams());
|
|
122
|
+
this._imageStream.dictionary = dictionary;
|
|
123
|
+
this._imageStream.bytes = new Uint8Array(this._imageStream.data[0].length);
|
|
124
|
+
for (var i = 0; i < this._imageStream.data[0].length; i++) {
|
|
125
|
+
this._imageStream.bytes[Number.parseInt(i.toString(), 10)] = this._imageStream.data[0].charCodeAt(i);
|
|
126
|
+
}
|
|
127
|
+
this._imageStream.end = this._imageStream.bytes.length;
|
|
128
|
+
this._imageStream.dictionary._updated = true;
|
|
129
|
+
return this._imageStream;
|
|
130
|
+
};
|
|
131
|
+
_ImageDecoder.prototype._getColorSpace = function () {
|
|
132
|
+
if (this._noOfComponents === 1) {
|
|
133
|
+
return 'DeviceGray';
|
|
134
|
+
}
|
|
135
|
+
else if (this._noOfComponents === 4) {
|
|
136
|
+
return 'DeviceCMYK';
|
|
137
|
+
}
|
|
138
|
+
return 'DeviceRGB';
|
|
139
|
+
};
|
|
140
|
+
_ImageDecoder.prototype._getDecodeParams = function () {
|
|
141
|
+
var decodeParams = new _PdfDictionary();
|
|
142
|
+
decodeParams.set('Columns', this._width);
|
|
143
|
+
decodeParams.set('BlackIs1', true);
|
|
144
|
+
decodeParams.set('K', -1);
|
|
145
|
+
decodeParams.set('Predictor', 15);
|
|
146
|
+
decodeParams.set('BitsPerComponent', this._bitsPerComponent);
|
|
147
|
+
return decodeParams;
|
|
148
|
+
};
|
|
149
|
+
_ImageDecoder.prototype._seek = function (length) {
|
|
150
|
+
this._position += length;
|
|
151
|
+
};
|
|
152
|
+
_ImageDecoder.prototype._readByte = function () {
|
|
153
|
+
if (this._position < this._stream.byteLength) {
|
|
154
|
+
var value = this._getBuffer(this._position);
|
|
155
|
+
this._position += 1;
|
|
156
|
+
return value;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
throw new Error('Error decoding JPEG image. Invalid offset.');
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
_ImageDecoder.prototype._skipStream = function () {
|
|
163
|
+
var length = this._getBuffer(this._position) << 8 | this._getBuffer(this._position + 1);
|
|
164
|
+
this._seek(2);
|
|
165
|
+
if (length < 2) {
|
|
166
|
+
throw new Error('Error decoding JPEG image');
|
|
167
|
+
}
|
|
168
|
+
else if (length > 0) {
|
|
169
|
+
this._seek(length - 2);
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
_ImageDecoder.prototype._readExceededJpegImage = function () {
|
|
173
|
+
var isContinueReading = true;
|
|
174
|
+
while (isContinueReading) {
|
|
175
|
+
var marker = this._getMarker();
|
|
176
|
+
switch (marker) {
|
|
177
|
+
case 0x00C0:
|
|
178
|
+
case 0x00C1:
|
|
179
|
+
case 0x00C2:
|
|
180
|
+
case 0x00C3:
|
|
181
|
+
case 0x00C5:
|
|
182
|
+
case 0x00C6:
|
|
183
|
+
case 0x00C7:
|
|
184
|
+
case 0x00C9:
|
|
185
|
+
case 0x00CA:
|
|
186
|
+
case 0x00CB:
|
|
187
|
+
case 0x00CD:
|
|
188
|
+
case 0x00CE:
|
|
189
|
+
case 0x00CF:
|
|
190
|
+
this._seek(3);
|
|
191
|
+
this._height = this._getBuffer(this._position) << 8 | this._getBuffer(this._position + 1);
|
|
192
|
+
this._seek(2);
|
|
193
|
+
this._width = this._getBuffer(this._position) << 8 | this._getBuffer(this._position + 1);
|
|
194
|
+
this._seek(2);
|
|
195
|
+
this._noOfComponents = this._getBuffer(this._position);
|
|
196
|
+
this._seek(1);
|
|
197
|
+
isContinueReading = false;
|
|
198
|
+
break;
|
|
199
|
+
default:
|
|
200
|
+
this._skipStream();
|
|
201
|
+
break;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
};
|
|
205
|
+
_ImageDecoder.prototype._toUnsigned16 = function (value) {
|
|
206
|
+
value = value & 0xFFFF;
|
|
207
|
+
return value < 0 ? (value + 0x10000) : value;
|
|
208
|
+
};
|
|
209
|
+
_ImageDecoder.prototype._getMarker = function () {
|
|
210
|
+
var skippedByte = 0;
|
|
211
|
+
var marker = this._readByte();
|
|
212
|
+
while (marker != 255) {
|
|
213
|
+
skippedByte++;
|
|
214
|
+
marker = this._readByte();
|
|
215
|
+
}
|
|
216
|
+
do {
|
|
217
|
+
marker = this._readByte();
|
|
218
|
+
} while (marker == 255);
|
|
219
|
+
if (skippedByte != 0) {
|
|
220
|
+
throw new Error('Error decoding JPEG image');
|
|
221
|
+
}
|
|
222
|
+
return this._toUnsigned16(marker);
|
|
223
|
+
};
|
|
224
|
+
_ImageDecoder._jpegHeader = [255, 216];
|
|
225
|
+
return _ImageDecoder;
|
|
226
|
+
}());
|
|
227
|
+
export { _ImageDecoder };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { _ImageDecoder } from './../../graphics/images/image-decoder';
|
|
2
|
+
import { PdfImage } from './pdf-image';
|
|
3
|
+
/**
|
|
4
|
+
* The 'PdfBitmap' contains methods and properties to handle the Bitmap images.
|
|
5
|
+
* ```typescript
|
|
6
|
+
* // Load an existing PDF document
|
|
7
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
8
|
+
* // Access first page
|
|
9
|
+
* let page: PdfPage = document.getPage(0);
|
|
10
|
+
* // Gets the graphics of the PDF page
|
|
11
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
12
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
13
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
14
|
+
* //Draw the image.
|
|
15
|
+
* graphics.drawImage(image, 10, 20, 400, 400);
|
|
16
|
+
* // Save the document
|
|
17
|
+
* document.save('output.pdf');
|
|
18
|
+
* // Destroy the document
|
|
19
|
+
* document.destroy();
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare class PdfBitmap extends PdfImage {
|
|
23
|
+
_imageStatus: boolean;
|
|
24
|
+
_checkImageType: number;
|
|
25
|
+
_decoder: _ImageDecoder;
|
|
26
|
+
/**
|
|
27
|
+
* Create an instance for `PdfBitmap` class.
|
|
28
|
+
*
|
|
29
|
+
* @param {string} encodedString Image as Base64 string.
|
|
30
|
+
* ```typescript
|
|
31
|
+
* // Load an existing PDF document
|
|
32
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
33
|
+
* // Access first page
|
|
34
|
+
* let page: PdfPage = document.getPage(0);
|
|
35
|
+
* // Gets the graphics of the PDF page
|
|
36
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
37
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
38
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
39
|
+
* //Draw the image.
|
|
40
|
+
* graphics.drawImage(image, 10, 20, 400, 400);
|
|
41
|
+
* // Save the document
|
|
42
|
+
* document.save('output.pdf');
|
|
43
|
+
* // Destroy the document
|
|
44
|
+
* document.destroy();
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
constructor(encodedString: string);
|
|
48
|
+
/**
|
|
49
|
+
* Create an instance for `PdfBitmap` class.
|
|
50
|
+
*
|
|
51
|
+
* @param {Uint8Array} encodedString Image data as byte array.
|
|
52
|
+
* ```typescript
|
|
53
|
+
* // Load an existing PDF document
|
|
54
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
55
|
+
* // Access first page
|
|
56
|
+
* let page: PdfPage = document.getPage(0);
|
|
57
|
+
* // Gets the graphics of the PDF page
|
|
58
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
59
|
+
* // Create new image object by using JPEG image data as array of bytes
|
|
60
|
+
* let image: PdfImage = new PdfBitmap(array);
|
|
61
|
+
* //Draw the image.
|
|
62
|
+
* graphics.drawImage(image, 10, 20, 400, 400);
|
|
63
|
+
* // Save the document
|
|
64
|
+
* document.save('output.pdf');
|
|
65
|
+
* // Destroy the document
|
|
66
|
+
* document.destroy();
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
constructor(encodedString: Uint8Array);
|
|
70
|
+
_initializeAsync(encodedString: string): void;
|
|
71
|
+
_initializeAsync(encodedString: Uint8Array): void;
|
|
72
|
+
_save(): void;
|
|
73
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
extendStatics(d, b);
|
|
10
|
+
function __() { this.constructor = d; }
|
|
11
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
12
|
+
};
|
|
13
|
+
})();
|
|
14
|
+
import { _ImageDecoder } from './../../graphics/images/image-decoder';
|
|
15
|
+
import { PdfImage } from './pdf-image';
|
|
16
|
+
import { _decode } from './../../utils';
|
|
17
|
+
/**
|
|
18
|
+
* The 'PdfBitmap' contains methods and properties to handle the Bitmap images.
|
|
19
|
+
* ```typescript
|
|
20
|
+
* // Load an existing PDF document
|
|
21
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
22
|
+
* // Access first page
|
|
23
|
+
* let page: PdfPage = document.getPage(0);
|
|
24
|
+
* // Gets the graphics of the PDF page
|
|
25
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
26
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
27
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
28
|
+
* //Draw the image.
|
|
29
|
+
* graphics.drawImage(image, 10, 20, 400, 400);
|
|
30
|
+
* // Save the document
|
|
31
|
+
* document.save('output.pdf');
|
|
32
|
+
* // Destroy the document
|
|
33
|
+
* document.destroy();
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
var PdfBitmap = /** @class */ (function (_super) {
|
|
37
|
+
__extends(PdfBitmap, _super);
|
|
38
|
+
function PdfBitmap(encodedString) {
|
|
39
|
+
var _this = _super.call(this) || this;
|
|
40
|
+
_this._imageStatus = true;
|
|
41
|
+
if (encodedString !== null && typeof encodedString !== 'undefined' && typeof encodedString === 'string') {
|
|
42
|
+
_this._initializeAsync(encodedString);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
_this._initializeAsync(encodedString);
|
|
46
|
+
}
|
|
47
|
+
return _this;
|
|
48
|
+
}
|
|
49
|
+
PdfBitmap.prototype._initializeAsync = function (encodedString) {
|
|
50
|
+
var byteArray = new Uint8Array(encodedString.length);
|
|
51
|
+
if (encodedString !== null && typeof encodedString !== 'undefined' && typeof encodedString === 'string') {
|
|
52
|
+
byteArray = _decode(encodedString, false);
|
|
53
|
+
}
|
|
54
|
+
else if (encodedString instanceof Uint8Array) {
|
|
55
|
+
byteArray = encodedString;
|
|
56
|
+
}
|
|
57
|
+
this._decoder = new _ImageDecoder(byteArray);
|
|
58
|
+
this.height = this._decoder._height;
|
|
59
|
+
this.width = this._decoder._width;
|
|
60
|
+
this._bitsPerComponent = this._decoder._bitsPerComponent;
|
|
61
|
+
};
|
|
62
|
+
PdfBitmap.prototype._save = function () {
|
|
63
|
+
this._imageStatus = true;
|
|
64
|
+
this._imageStream = this._decoder._getImageDictionary();
|
|
65
|
+
};
|
|
66
|
+
return PdfBitmap;
|
|
67
|
+
}(PdfImage));
|
|
68
|
+
export { PdfBitmap };
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { _PdfReference } from './../../pdf-primitives';
|
|
2
|
+
import { _PdfStream } from './../../base-stream';
|
|
3
|
+
import { PdfGraphics } from './../../graphics/pdf-graphics';
|
|
4
|
+
/**
|
|
5
|
+
* The 'PdfImage' contains methods and properties to handle the images.
|
|
6
|
+
* ```typescript
|
|
7
|
+
* // Load an existing PDF document
|
|
8
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
9
|
+
* // Access first page
|
|
10
|
+
* let page: PdfPage = document.getPage(0);
|
|
11
|
+
* // Gets the graphics of the PDF page
|
|
12
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
13
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
14
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
15
|
+
* //Draw the image.
|
|
16
|
+
* graphics.drawImage(image, 10, 20, 400, 400);
|
|
17
|
+
* // Save the document
|
|
18
|
+
* document.save('output.pdf');
|
|
19
|
+
* // Destroy the document
|
|
20
|
+
* document.destroy();
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare abstract class PdfImage {
|
|
24
|
+
_imageWidth: number;
|
|
25
|
+
_imageHeight: number;
|
|
26
|
+
_bitsPerComponent: number;
|
|
27
|
+
_horizontalResolution: number;
|
|
28
|
+
_verticalResolution: number;
|
|
29
|
+
_imagePhysicalDimension: number[];
|
|
30
|
+
_imageStream: _PdfStream;
|
|
31
|
+
_reference: _PdfReference;
|
|
32
|
+
/**
|
|
33
|
+
* Gets the width of the PDF image.
|
|
34
|
+
*
|
|
35
|
+
* @returns {number} image width.
|
|
36
|
+
* ```typescript
|
|
37
|
+
* // Load an existing PDF document
|
|
38
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
39
|
+
* // Access first page
|
|
40
|
+
* let page: PdfPage = document.getPage(0);
|
|
41
|
+
* // Gets the graphics of the PDF page
|
|
42
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
43
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
44
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
45
|
+
* // Gets the width of the image.
|
|
46
|
+
* let width: number = image.width;
|
|
47
|
+
* //Draw the image.
|
|
48
|
+
* image.draw(graphics);
|
|
49
|
+
* // Save the document
|
|
50
|
+
* document.save('output.pdf');
|
|
51
|
+
* // Destroy the document
|
|
52
|
+
* document.destroy();
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
/**
|
|
56
|
+
* Sets the width of the PDF image.
|
|
57
|
+
*
|
|
58
|
+
* @param {number} value value.
|
|
59
|
+
* ```typescript
|
|
60
|
+
* // Load an existing PDF document
|
|
61
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
62
|
+
* // Access first page
|
|
63
|
+
* let page: PdfPage = document.getPage(0);
|
|
64
|
+
* // Gets the graphics of the PDF page
|
|
65
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
66
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
67
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
68
|
+
* // Sets the width of the image.
|
|
69
|
+
* image.width = 100;
|
|
70
|
+
* //Draw the image.
|
|
71
|
+
* image.draw(graphics);
|
|
72
|
+
* // Save the document
|
|
73
|
+
* document.save('output.pdf');
|
|
74
|
+
* // Destroy the document
|
|
75
|
+
* document.destroy();
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
width: number;
|
|
79
|
+
/**
|
|
80
|
+
* Gets the height of the PDF image.
|
|
81
|
+
*
|
|
82
|
+
* @returns {number} image height.
|
|
83
|
+
* ```typescript
|
|
84
|
+
* // Load an existing PDF document
|
|
85
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
86
|
+
* // Access first page
|
|
87
|
+
* let page: PdfPage = document.getPage(0);
|
|
88
|
+
* // Gets the graphics of the PDF page
|
|
89
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
90
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
91
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
92
|
+
* // Gets the height of the image.
|
|
93
|
+
* let height: number = image.height;
|
|
94
|
+
* //Draw the image.
|
|
95
|
+
* image.draw(graphics);
|
|
96
|
+
* // Save the document
|
|
97
|
+
* document.save('output.pdf');
|
|
98
|
+
* // Destroy the document
|
|
99
|
+
* document.destroy();
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
/**
|
|
103
|
+
* Sets the height of the PDF image.
|
|
104
|
+
*
|
|
105
|
+
* @param {number} value value.
|
|
106
|
+
* ```typescript
|
|
107
|
+
* // Load an existing PDF document
|
|
108
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
109
|
+
* // Access first page
|
|
110
|
+
* let page: PdfPage = document.getPage(0);
|
|
111
|
+
* // Gets the graphics of the PDF page
|
|
112
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
113
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
114
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
115
|
+
* // Sets the height of the image.
|
|
116
|
+
* image.height = 100;
|
|
117
|
+
* //Draw the image.
|
|
118
|
+
* image.draw(graphics);
|
|
119
|
+
* // Save the document
|
|
120
|
+
* document.save('output.pdf');
|
|
121
|
+
* // Destroy the document
|
|
122
|
+
* document.destroy();
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
height: number;
|
|
126
|
+
/**
|
|
127
|
+
* Gets the physical dimension of the PDF image (Read only).
|
|
128
|
+
*
|
|
129
|
+
* @returns {number[]} image physical dimension.
|
|
130
|
+
* ```typescript
|
|
131
|
+
* // Load an existing PDF document
|
|
132
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
133
|
+
* // Access first page
|
|
134
|
+
* let page: PdfPage = document.getPage(0);
|
|
135
|
+
* // Gets the graphics of the PDF page
|
|
136
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
137
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
138
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
139
|
+
* // Gets the physical dimension of the image.
|
|
140
|
+
* let dimension: number[] = image.physicalDimension;
|
|
141
|
+
* //Draw the image.
|
|
142
|
+
* image.draw(graphics);
|
|
143
|
+
* // Save the document
|
|
144
|
+
* document.save('output.pdf');
|
|
145
|
+
* // Destroy the document
|
|
146
|
+
* document.destroy();
|
|
147
|
+
* ```
|
|
148
|
+
*/
|
|
149
|
+
readonly physicalDimension: number[];
|
|
150
|
+
/**
|
|
151
|
+
* Represents a method to draw a image on the PDF graphics.
|
|
152
|
+
*
|
|
153
|
+
* @param {PdfGraphics} graphics value.
|
|
154
|
+
* @returns {void} Draws a image on the page graphics.
|
|
155
|
+
* ```typescript
|
|
156
|
+
* // Load an existing PDF document
|
|
157
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
158
|
+
* // Access first page
|
|
159
|
+
* let page: PdfPage = document.getPage(0);
|
|
160
|
+
* // Gets the graphics of the PDF page
|
|
161
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
162
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
163
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
164
|
+
* //Draw the image.
|
|
165
|
+
* image.draw(graphics);
|
|
166
|
+
* // Save the document
|
|
167
|
+
* document.save('output.pdf');
|
|
168
|
+
* // Destroy the document
|
|
169
|
+
* document.destroy();
|
|
170
|
+
* ```
|
|
171
|
+
*/
|
|
172
|
+
draw(graphics: PdfGraphics): void;
|
|
173
|
+
/**
|
|
174
|
+
* Represents a method to draw a image on the PDF graphics.
|
|
175
|
+
*
|
|
176
|
+
* @param {PdfGraphics} graphics value.
|
|
177
|
+
* @param {number} x The x-coordinate of the image
|
|
178
|
+
* @param {number} y The y-coordinate of the image.
|
|
179
|
+
* @returns {void} Draws a image on the page graphics.
|
|
180
|
+
* ```typescript
|
|
181
|
+
* // Load an existing PDF document
|
|
182
|
+
* let document: PdfDocument = new PdfDocument(data, password);
|
|
183
|
+
* // Access first page
|
|
184
|
+
* let page: PdfPage = document.getPage(0);
|
|
185
|
+
* // Gets the graphics of the PDF page
|
|
186
|
+
* let graphics: PdfGraphics = page.graphics;
|
|
187
|
+
* // Create new image object by using JPEG image data as Base64 string format
|
|
188
|
+
* let image: PdfImage = new PdfBitmap('/9j/4AAQSkZJRgABAQEAkACQAAD/4....QB//Z');
|
|
189
|
+
* //Draw the image.
|
|
190
|
+
* image.draw(graphics, 10, 10);
|
|
191
|
+
* // Save the document
|
|
192
|
+
* document.save('output.pdf');
|
|
193
|
+
* // Destroy the document
|
|
194
|
+
* document.destroy();
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
197
|
+
draw(graphics: PdfGraphics, x: number, y: number): void;
|
|
198
|
+
abstract _save(): void;
|
|
199
|
+
_getPointSize(width: number, height: number): number[];
|
|
200
|
+
_getPointSize(width: number, height: number, horizontalResolution: number): number[];
|
|
201
|
+
}
|