@syncfusion/ej2-docx 0.0.0-stage → 35.1.40
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/.gitleaksignore +35 -0
- package/README.md +68 -2
- package/core.js +4 -0
- package/dist/ej2-docx.umd.min.js +11 -0
- package/dist/ej2-docx.umd.min.js.map +1 -0
- package/dist/es6/ej2-docx.es2015.js +66697 -0
- package/dist/es6/ej2-docx.es2015.js.map +1 -0
- package/dist/es6/ej2-docx.es5.js +77568 -0
- package/dist/es6/ej2-docx.es5.js.map +1 -0
- package/dist/global/ej2-docx.min.js +11 -0
- package/dist/global/ej2-docx.min.js.map +1 -0
- package/dist/global/index.d.ts +14 -0
- package/features.js +4 -0
- package/index.js +4 -0
- package/license +10 -0
- package/package.json +30 -3
- package/src/all.d.ts +50 -0
- package/src/all.js +147 -0
- package/src/core/compat/base64.d.ts +13 -0
- package/src/core/compat/base64.js +90 -0
- package/src/core/compat/object-compat.d.ts +30 -0
- package/src/core/compat/object-compat.js +40 -0
- package/src/core/compat/sha256.d.ts +9 -0
- package/src/core/compat/sha256.js +98 -0
- package/src/core/errors/docx-error.d.ts +89 -0
- package/src/core/errors/docx-error.js +138 -0
- package/src/core/errors/error-codes.d.ts +8 -0
- package/src/core/errors/error-codes.js +0 -0
- package/src/core/errors/index.d.ts +10 -0
- package/src/core/errors/index.js +9 -0
- package/src/core/index.d.ts +12 -0
- package/src/core/index.js +12 -0
- package/src/core/mc/alternate-content.d.ts +7 -0
- package/src/core/mc/alternate-content.js +67 -0
- package/src/core/mc/attributes.d.ts +24 -0
- package/src/core/mc/attributes.js +82 -0
- package/src/core/mc/index.d.ts +7 -0
- package/src/core/mc/index.js +5 -0
- package/src/core/mc/inspect.d.ts +16 -0
- package/src/core/mc/inspect.js +148 -0
- package/src/core/mc/namespaces.d.ts +4 -0
- package/src/core/mc/namespaces.js +4 -0
- package/src/core/mc/scope.d.ts +6 -0
- package/src/core/mc/scope.js +47 -0
- package/src/core/opc/content-types.d.ts +34 -0
- package/src/core/opc/content-types.js +162 -0
- package/src/core/opc/index.d.ts +8 -0
- package/src/core/opc/index.js +4 -0
- package/src/core/opc/package.d.ts +49 -0
- package/src/core/opc/package.js +324 -0
- package/src/core/opc/part-name.d.ts +47 -0
- package/src/core/opc/part-name.js +205 -0
- package/src/core/opc/relationships.d.ts +46 -0
- package/src/core/opc/relationships.js +212 -0
- package/src/core/preservation/index.d.ts +2 -0
- package/src/core/preservation/index.js +1 -0
- package/src/core/preservation/opaque-body.d.ts +16 -0
- package/src/core/preservation/opaque-body.js +69 -0
- package/src/core/registry/block-handlers.d.ts +30 -0
- package/src/core/registry/block-handlers.js +36 -0
- package/src/core/registry/create-defaults.d.ts +39 -0
- package/src/core/registry/create-defaults.js +42 -0
- package/src/core/registry/feature-registry.d.ts +20 -0
- package/src/core/registry/feature-registry.js +29 -0
- package/src/core/registry/index.d.ts +9 -0
- package/src/core/registry/index.js +8 -0
- package/src/core/registry/inline-handlers.d.ts +20 -0
- package/src/core/registry/inline-handlers.js +30 -0
- package/src/core/registry/materialize-handlers.d.ts +35 -0
- package/src/core/registry/materialize-handlers.js +75 -0
- package/src/core/registry/multi-part-handlers.d.ts +37 -0
- package/src/core/registry/multi-part-handlers.js +206 -0
- package/src/core/registry/package-part-handlers.d.ts +28 -0
- package/src/core/registry/package-part-handlers.js +190 -0
- package/src/core/registry/part-handlers.d.ts +24 -0
- package/src/core/registry/part-handlers.js +172 -0
- package/src/core/registry/run-leaf-handlers.d.ts +26 -0
- package/src/core/registry/run-leaf-handlers.js +72 -0
- package/src/core/security/limits.d.ts +40 -0
- package/src/core/security/limits.js +26 -0
- package/src/core/xml/index.d.ts +7 -0
- package/src/core/xml/index.js +3 -0
- package/src/core/xml/model.d.ts +66 -0
- package/src/core/xml/model.js +17 -0
- package/src/core/xml/parse.d.ts +12 -0
- package/src/core/xml/parse.js +382 -0
- package/src/core/xml/serialize.d.ts +6 -0
- package/src/core/xml/serialize.js +93 -0
- package/src/core/zip/crc32.d.ts +2 -0
- package/src/core/zip/crc32.js +25 -0
- package/src/core/zip/deflate.d.ts +6 -0
- package/src/core/zip/deflate.js +6 -0
- package/src/core/zip/index.d.ts +10 -0
- package/src/core/zip/index.js +4 -0
- package/src/core/zip/inflate-raw.d.ts +17 -0
- package/src/core/zip/inflate-raw.js +450 -0
- package/src/core/zip/names.d.ts +6 -0
- package/src/core/zip/names.js +52 -0
- package/src/core/zip/read.d.ts +8 -0
- package/src/core/zip/read.js +262 -0
- package/src/core/zip/write.d.ts +7 -0
- package/src/core/zip/write.js +189 -0
- package/src/core/zip/zip-entry.d.ts +4 -0
- package/src/core/zip/zip-entry.js +0 -0
- package/src/features/bibliography/index.d.ts +100 -0
- package/src/features/bibliography/index.js +290 -0
- package/src/features/bookmarks/index.d.ts +331 -0
- package/src/features/bookmarks/index.js +1009 -0
- package/src/features/comments/comment-extensions.d.ts +157 -0
- package/src/features/comments/comment-extensions.js +356 -0
- package/src/features/comments/index.d.ts +579 -0
- package/src/features/comments/index.js +1727 -0
- package/src/features/content-controls/index.d.ts +821 -0
- package/src/features/content-controls/index.js +2857 -0
- package/src/features/custom-xml/index.d.ts +236 -0
- package/src/features/custom-xml/index.js +661 -0
- package/src/features/document/alignment.d.ts +23 -0
- package/src/features/document/alignment.js +36 -0
- package/src/features/document/alt-chunk.d.ts +103 -0
- package/src/features/document/alt-chunk.js +221 -0
- package/src/features/document/assert-never.d.ts +1 -0
- package/src/features/document/assert-never.js +4 -0
- package/src/features/document/augmentations.d.ts +578 -0
- package/src/features/document/augmentations.js +0 -0
- package/src/features/document/body-always-on.d.ts +36 -0
- package/src/features/document/body-always-on.js +66 -0
- package/src/features/document/body-blocks.d.ts +7 -0
- package/src/features/document/body-blocks.js +78 -0
- package/src/features/document/body-item-adapters.d.ts +62 -0
- package/src/features/document/body-item-adapters.js +97 -0
- package/src/features/document/body-item-collection.d.ts +151 -0
- package/src/features/document/body-item-collection.js +440 -0
- package/src/features/document/body-item.d.ts +35 -0
- package/src/features/document/body-item.js +8 -0
- package/src/features/document/body.d.ts +150 -0
- package/src/features/document/body.js +263 -0
- package/src/features/document/character-format.d.ts +413 -0
- package/src/features/document/character-format.js +2054 -0
- package/src/features/document/color.d.ts +178 -0
- package/src/features/document/color.js +495 -0
- package/src/features/document/document.d.ts +410 -0
- package/src/features/document/document.js +1049 -0
- package/src/features/document/element-type.d.ts +68 -0
- package/src/features/document/element-type.js +133 -0
- package/src/features/document/entity-type.d.ts +92 -0
- package/src/features/document/entity-type.js +93 -0
- package/src/features/document/feature-block.d.ts +16 -0
- package/src/features/document/feature-block.js +0 -0
- package/src/features/document/feature-inline.d.ts +13 -0
- package/src/features/document/feature-inline.js +0 -0
- package/src/features/document/feature-multi-package-part.d.ts +19 -0
- package/src/features/document/feature-multi-package-part.js +8 -0
- package/src/features/document/feature-package-level-part.d.ts +18 -0
- package/src/features/document/feature-package-level-part.js +8 -0
- package/src/features/document/feature-package-part.d.ts +14 -0
- package/src/features/document/feature-package-part.js +0 -0
- package/src/features/document/feature-run-leaf.d.ts +9 -0
- package/src/features/document/feature-run-leaf.js +0 -0
- package/src/features/document/headers-footers.d.ts +206 -0
- package/src/features/document/headers-footers.js +384 -0
- package/src/features/document/index.d.ts +41 -0
- package/src/features/document/index.js +34 -0
- package/src/features/document/length.d.ts +152 -0
- package/src/features/document/length.js +245 -0
- package/src/features/document/load-options.d.ts +14 -0
- package/src/features/document/load-options.js +0 -0
- package/src/features/document/locale-ids.d.ts +227 -0
- package/src/features/document/locale-ids.js +485 -0
- package/src/features/document/on-off.d.ts +9 -0
- package/src/features/document/on-off.js +27 -0
- package/src/features/document/page-setup.d.ts +339 -0
- package/src/features/document/page-setup.js +244 -0
- package/src/features/document/paragraph-format.d.ts +880 -0
- package/src/features/document/paragraph-format.js +2807 -0
- package/src/features/document/paragraph-item-collection.d.ts +162 -0
- package/src/features/document/paragraph-item-collection.js +363 -0
- package/src/features/document/paragraph-item.d.ts +83 -0
- package/src/features/document/paragraph-item.js +103 -0
- package/src/features/document/paragraph.d.ts +435 -0
- package/src/features/document/paragraph.js +888 -0
- package/src/features/document/run.d.ts +1 -0
- package/src/features/document/run.js +768 -0
- package/src/features/document/section-partition-flatten.d.ts +124 -0
- package/src/features/document/section-partition-flatten.js +217 -0
- package/src/features/document/section-properties-model.d.ts +13 -0
- package/src/features/document/section-properties-model.js +0 -0
- package/src/features/document/section.d.ts +93 -0
- package/src/features/document/section.js +178 -0
- package/src/features/document/sections.d.ts +103 -0
- package/src/features/document/sections.js +217 -0
- package/src/features/document/sub-super-script.d.ts +23 -0
- package/src/features/document/sub-super-script.js +43 -0
- package/src/features/document/text-range.d.ts +445 -0
- package/src/features/document/text-range.js +1156 -0
- package/src/features/document/typed-body-collections.d.ts +162 -0
- package/src/features/document/typed-body-collections.js +371 -0
- package/src/features/document/underline-style.d.ts +38 -0
- package/src/features/document/underline-style.js +126 -0
- package/src/features/document/units.d.ts +8 -0
- package/src/features/document/units.js +7 -0
- package/src/features/document/wml.d.ts +16 -0
- package/src/features/document/wml.js +67 -0
- package/src/features/drawing/authoring.d.ts +27 -0
- package/src/features/drawing/authoring.js +271 -0
- package/src/features/drawing/body-pr.d.ts +271 -0
- package/src/features/drawing/body-pr.js +663 -0
- package/src/features/drawing/drawing-shape.d.ts +1192 -0
- package/src/features/drawing/drawing-shape.js +3239 -0
- package/src/features/drawing/encode-builders.d.ts +176 -0
- package/src/features/drawing/encode-builders.js +390 -0
- package/src/features/drawing/fill-format.d.ts +52 -0
- package/src/features/drawing/fill-format.js +124 -0
- package/src/features/drawing/host-codec.d.ts +632 -0
- package/src/features/drawing/host-codec.js +2595 -0
- package/src/features/drawing/index.d.ts +13 -0
- package/src/features/drawing/index.js +33 -0
- package/src/features/drawing/line-format.d.ts +76 -0
- package/src/features/drawing/line-format.js +343 -0
- package/src/features/drawing/parse-register.d.ts +50 -0
- package/src/features/drawing/parse-register.js +257 -0
- package/src/features/drawing/residual-utils.d.ts +47 -0
- package/src/features/drawing/residual-utils.js +290 -0
- package/src/features/drawing/shape-types.d.ts +433 -0
- package/src/features/drawing/shape-types.js +437 -0
- package/src/features/drawing/sp-pr.d.ts +396 -0
- package/src/features/drawing/sp-pr.js +610 -0
- package/src/features/drawing/text-frame.d.ts +90 -0
- package/src/features/drawing/text-frame.js +152 -0
- package/src/features/drawing/types.d.ts +352 -0
- package/src/features/drawing/types.js +60 -0
- package/src/features/drawing/wrap-format.d.ts +62 -0
- package/src/features/drawing/wrap-format.js +114 -0
- package/src/features/editable-ranges/index.d.ts +494 -0
- package/src/features/editable-ranges/index.js +1348 -0
- package/src/features/fields/index.d.ts +428 -0
- package/src/features/fields/index.js +2148 -0
- package/src/features/fields/paragraph-field.d.ts +187 -0
- package/src/features/fields/paragraph-field.js +692 -0
- package/src/features/font-table/font-substitution-table.d.ts +75 -0
- package/src/features/font-table/font-substitution-table.js +257 -0
- package/src/features/font-table/font-table-entry.d.ts +255 -0
- package/src/features/font-table/font-table-entry.js +823 -0
- package/src/features/font-table/font-table.d.ts +128 -0
- package/src/features/font-table/font-table.js +313 -0
- package/src/features/font-table/index.d.ts +27 -0
- package/src/features/font-table/index.js +48 -0
- package/src/features/glossary/index.d.ts +97 -0
- package/src/features/glossary/index.js +286 -0
- package/src/features/headers-footers/index.d.ts +506 -0
- package/src/features/headers-footers/index.js +1666 -0
- package/src/features/hyperlinks/index.d.ts +230 -0
- package/src/features/hyperlinks/index.js +685 -0
- package/src/features/images/caption-authoring-api.d.ts +33 -0
- package/src/features/images/caption-authoring-api.js +33 -0
- package/src/features/images/caption-enums.d.ts +52 -0
- package/src/features/images/caption-enums.js +141 -0
- package/src/features/images/caption-host.d.ts +10 -0
- package/src/features/images/caption-host.js +21 -0
- package/src/features/images/captions.d.ts +13 -0
- package/src/features/images/captions.js +142 -0
- package/src/features/images/host-codec.d.ts +103 -0
- package/src/features/images/host-codec.js +720 -0
- package/src/features/images/image-sniff.d.ts +21 -0
- package/src/features/images/image-sniff.js +71 -0
- package/src/features/images/index.d.ts +506 -0
- package/src/features/images/index.js +1429 -0
- package/src/features/images/layout-types.d.ts +232 -0
- package/src/features/images/layout-types.js +294 -0
- package/src/features/images/public-entry.d.ts +9 -0
- package/src/features/images/public-entry.js +9 -0
- package/src/features/index.d.ts +35 -0
- package/src/features/index.js +36 -0
- package/src/features/mail-merge/index.d.ts +113 -0
- package/src/features/mail-merge/index.js +315 -0
- package/src/features/notes/index.d.ts +573 -0
- package/src/features/notes/index.js +1725 -0
- package/src/features/numbering/abstract-numbering.d.ts +90 -0
- package/src/features/numbering/abstract-numbering.js +292 -0
- package/src/features/numbering/index.d.ts +182 -0
- package/src/features/numbering/index.js +668 -0
- package/src/features/numbering/list-format.d.ts +158 -0
- package/src/features/numbering/list-format.js +590 -0
- package/src/features/numbering/list-string.d.ts +7 -0
- package/src/features/numbering/list-string.js +423 -0
- package/src/features/numbering/list-style.d.ts +204 -0
- package/src/features/numbering/list-style.js +1084 -0
- package/src/features/numbering/numbering-instance.d.ts +101 -0
- package/src/features/numbering/numbering-instance.js +329 -0
- package/src/features/numbering/numbering-level.d.ts +118 -0
- package/src/features/numbering/numbering-level.js +501 -0
- package/src/features/numbering/picture-bullet.d.ts +34 -0
- package/src/features/numbering/picture-bullet.js +88 -0
- package/src/features/ole-object/catalog.d.ts +300 -0
- package/src/features/ole-object/catalog.js +908 -0
- package/src/features/ole-object/index.d.ts +526 -0
- package/src/features/ole-object/index.js +1421 -0
- package/src/features/ole-object/relationship.d.ts +27 -0
- package/src/features/ole-object/relationship.js +27 -0
- package/src/features/ole-object/typed-dom.d.ts +186 -0
- package/src/features/ole-object/typed-dom.js +595 -0
- package/src/features/properties/index.d.ts +205 -0
- package/src/features/properties/index.js +549 -0
- package/src/features/revisions/index.d.ts +204 -0
- package/src/features/revisions/index.js +695 -0
- package/src/features/sections/column-collection.d.ts +119 -0
- package/src/features/sections/column-collection.js +478 -0
- package/src/features/sections/column.d.ts +15 -0
- package/src/features/sections/column.js +37 -0
- package/src/features/sections/index.d.ts +91 -0
- package/src/features/sections/index.js +1096 -0
- package/src/features/sections/margins.d.ts +40 -0
- package/src/features/sections/margins.js +105 -0
- package/src/features/sections/page-number-style.d.ts +21 -0
- package/src/features/sections/page-number-style.js +62 -0
- package/src/features/sections/page-orientation.d.ts +10 -0
- package/src/features/sections/page-orientation.js +10 -0
- package/src/features/sections/page-setup.d.ts +435 -0
- package/src/features/sections/page-setup.js +1479 -0
- package/src/features/sections/page-size.d.ts +59 -0
- package/src/features/sections/page-size.js +68 -0
- package/src/features/sections/section-break-code.d.ts +27 -0
- package/src/features/sections/section-break-code.js +60 -0
- package/src/features/sections/section-document-association.d.ts +18 -0
- package/src/features/sections/section-document-association.js +31 -0
- package/src/features/sections/section-validation.d.ts +43 -0
- package/src/features/sections/section-validation.js +97 -0
- package/src/features/settings/attached-template.d.ts +35 -0
- package/src/features/settings/attached-template.js +98 -0
- package/src/features/settings/compat-settings.d.ts +216 -0
- package/src/features/settings/compat-settings.js +508 -0
- package/src/features/settings/document-background.d.ts +59 -0
- package/src/features/settings/document-background.js +131 -0
- package/src/features/settings/document-protection.d.ts +65 -0
- package/src/features/settings/document-protection.js +157 -0
- package/src/features/settings/document-settings-facades.d.ts +108 -0
- package/src/features/settings/document-settings-facades.js +312 -0
- package/src/features/settings/document-settings-values.d.ts +43 -0
- package/src/features/settings/document-settings-values.js +60 -0
- package/src/features/settings/footnote-properties.d.ts +211 -0
- package/src/features/settings/footnote-properties.js +591 -0
- package/src/features/settings/index.d.ts +356 -0
- package/src/features/settings/index.js +829 -0
- package/src/features/settings/settings-children.d.ts +151 -0
- package/src/features/settings/settings-children.js +505 -0
- package/src/features/settings/web-settings.d.ts +88 -0
- package/src/features/settings/web-settings.js +227 -0
- package/src/features/settings/zoom.d.ts +79 -0
- package/src/features/settings/zoom.js +147 -0
- package/src/features/styles/builtin-catalog.d.ts +159 -0
- package/src/features/styles/builtin-catalog.js +963 -0
- package/src/features/styles/builtin-resolver.d.ts +49 -0
- package/src/features/styles/builtin-resolver.js +165 -0
- package/src/features/styles/default-styles.d.ts +37 -0
- package/src/features/styles/default-styles.js +186 -0
- package/src/features/styles/default-theme.d.ts +13 -0
- package/src/features/styles/default-theme.js +13 -0
- package/src/features/styles/doc-defaults.d.ts +58 -0
- package/src/features/styles/doc-defaults.js +178 -0
- package/src/features/styles/formatting-resolver.d.ts +27 -0
- package/src/features/styles/formatting-resolver.js +72 -0
- package/src/features/styles/index.d.ts +256 -0
- package/src/features/styles/index.js +1325 -0
- package/src/features/styles/latent-styles.d.ts +68 -0
- package/src/features/styles/latent-styles.js +305 -0
- package/src/features/styles/paragraph-properties.d.ts +71 -0
- package/src/features/styles/paragraph-properties.js +237 -0
- package/src/features/styles/run-properties.d.ts +93 -0
- package/src/features/styles/run-properties.js +516 -0
- package/src/features/styles/style-base.d.ts +402 -0
- package/src/features/styles/style-base.js +1026 -0
- package/src/features/styles/style-collection.d.ts +264 -0
- package/src/features/styles/style-collection.js +714 -0
- package/src/features/styles/style-format-bridge.d.ts +64 -0
- package/src/features/styles/style-format-bridge.js +100 -0
- package/src/features/styles/style.d.ts +84 -0
- package/src/features/styles/style.js +375 -0
- package/src/features/styles/styles-with-effects.d.ts +71 -0
- package/src/features/styles/styles-with-effects.js +180 -0
- package/src/features/styles/table-style.d.ts +272 -0
- package/src/features/styles/table-style.js +1226 -0
- package/src/features/styles/theme.d.ts +126 -0
- package/src/features/styles/theme.js +377 -0
- package/src/features/tables/border-style-map.d.ts +24 -0
- package/src/features/tables/border-style-map.js +81 -0
- package/src/features/tables/borders.d.ts +126 -0
- package/src/features/tables/borders.js +527 -0
- package/src/features/tables/collections.d.ts +113 -0
- package/src/features/tables/collections.js +261 -0
- package/src/features/tables/format.d.ts +208 -0
- package/src/features/tables/format.js +716 -0
- package/src/features/tables/index.d.ts +597 -0
- package/src/features/tables/index.js +2386 -0
- package/src/features/tables/paddings.d.ts +41 -0
- package/src/features/tables/paddings.js +97 -0
- package/src/features/tables/tbl-pr-positioning.d.ts +27 -0
- package/src/features/tables/tbl-pr-positioning.js +178 -0
- package/src/features/tables/tbl-pr.d.ts +528 -0
- package/src/features/tables/tbl-pr.js +1208 -0
- package/src/features/tables/tc-pr.d.ts +168 -0
- package/src/features/tables/tc-pr.js +553 -0
- package/src/features/tables/tr-pr.d.ts +60 -0
- package/src/features/tables/tr-pr.js +215 -0
- package/src/features/watermark/detect.d.ts +76 -0
- package/src/features/watermark/detect.js +219 -0
- package/src/features/watermark/index.d.ts +28 -0
- package/src/features/watermark/index.js +91 -0
- package/src/features/watermark/logical-store.d.ts +29 -0
- package/src/features/watermark/logical-store.js +31 -0
- package/src/features/watermark/model.d.ts +285 -0
- package/src/features/watermark/model.js +597 -0
- package/src/features/watermark/parse.d.ts +84 -0
- package/src/features/watermark/parse.js +815 -0
- package/src/features/watermark/serialize.d.ts +98 -0
- package/src/features/watermark/serialize.js +1517 -0
- package/src/global.js +1 -0
- package/src/index.d.ts +2 -0
- package/src/index.js +2 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { FontTablePart } from './font-table';
|
|
2
|
+
/**
|
|
3
|
+
* Dictionary of primary → alternate font names (`w:font/@w:name` → `w:altName/@w:val`).
|
|
4
|
+
*
|
|
5
|
+
* Facade over {@link FontTablePart} / {@link FontTableFont.alternateName} — not a
|
|
6
|
+
* separate string store. Entries exist only for fonts with a modeled non-empty
|
|
7
|
+
* alternate (ECMA-376-1 §17.8.3.1).
|
|
8
|
+
*
|
|
9
|
+
* **Preferred public entry:** {@link WordDocument.fontSubstitutionTable}. Prefer this
|
|
10
|
+
* over {@link fontTableFor} for substitution-only workflows (TASK-8067). Use
|
|
11
|
+
* `fontTableFor` for full `CT_Font` catalog metadata (panose, embeds, residual).
|
|
12
|
+
*
|
|
13
|
+
* Lookup keys are case-insensitive (locale-independent lower-case), matching
|
|
14
|
+
* {@link FontTablePart.font}. Stored primary casing is preserved on alternate-only
|
|
15
|
+
* updates; new rows keep the trimmed caller primary casing.
|
|
16
|
+
*
|
|
17
|
+
* @private
|
|
18
|
+
*/
|
|
19
|
+
export interface FontSubstitutionTable extends Iterable<[string, string]> {
|
|
20
|
+
/** Number of fonts that currently declare a non-empty alternate name. */
|
|
21
|
+
readonly size: number;
|
|
22
|
+
/**
|
|
23
|
+
* Upsert a substitution. Creates a minimal `w:font` row when the primary is absent.
|
|
24
|
+
*
|
|
25
|
+
* @returns `this` for chaining.
|
|
26
|
+
* @throws DocxError `content/unsupported` when either name is null, undefined,
|
|
27
|
+
* empty, or whitespace-only after trim.
|
|
28
|
+
*/
|
|
29
|
+
set(primaryFont: string, alternateFont: string): this;
|
|
30
|
+
/** Alternate for `primaryFont`, or `undefined` when absent / no `w:altName`. */
|
|
31
|
+
get(primaryFont: string): string | undefined;
|
|
32
|
+
/** Whether a modeled non-empty alternate exists for `primaryFont`. */
|
|
33
|
+
has(primaryFont: string): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Clear alternate on the matching font row only. Keeps `w:font` and other metadata.
|
|
36
|
+
*
|
|
37
|
+
* @returns `true` when an alternate was removed; `false` when nothing changed.
|
|
38
|
+
*/
|
|
39
|
+
delete(primaryFont: string): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Clear alternate on every font row. Keeps all rows and non-altName metadata.
|
|
42
|
+
*/
|
|
43
|
+
clear(): void;
|
|
44
|
+
entries(): IterableIterator<[string, string]>;
|
|
45
|
+
keys(): IterableIterator<string>;
|
|
46
|
+
values(): IterableIterator<string>;
|
|
47
|
+
[Symbol.iterator](): IterableIterator<[string, string]>;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* {@link FontSubstitutionTable} backed by a live {@link FontTablePart}.
|
|
51
|
+
*
|
|
52
|
+
* @private
|
|
53
|
+
* Constructed by the font-table feature host (`WordDocument.fontSubstitutionTable`).
|
|
54
|
+
*/
|
|
55
|
+
export declare class FontSubstitutionTableImpl implements FontSubstitutionTable {
|
|
56
|
+
private readonly part;
|
|
57
|
+
/**
|
|
58
|
+
* @private
|
|
59
|
+
*/
|
|
60
|
+
constructor(part: FontTablePart);
|
|
61
|
+
/**
|
|
62
|
+
* @private
|
|
63
|
+
* Live part this facade projects (same instance as {@link fontTableFor}). */
|
|
64
|
+
boundPart(): FontTablePart;
|
|
65
|
+
readonly size: number;
|
|
66
|
+
set(primaryFont: string, alternateFont: string): this;
|
|
67
|
+
get(primaryFont: string): string | undefined;
|
|
68
|
+
has(primaryFont: string): boolean;
|
|
69
|
+
delete(primaryFont: string): boolean;
|
|
70
|
+
clear(): void;
|
|
71
|
+
entries(): IterableIterator<[string, string]>;
|
|
72
|
+
keys(): IterableIterator<string>;
|
|
73
|
+
values(): IterableIterator<string>;
|
|
74
|
+
[Symbol.iterator](): IterableIterator<[string, string]>;
|
|
75
|
+
}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
2
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
3
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
4
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
5
|
+
function step(op) {
|
|
6
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
7
|
+
while (_) try {
|
|
8
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
9
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
10
|
+
switch (op[0]) {
|
|
11
|
+
case 0: case 1: t = op; break;
|
|
12
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
13
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
14
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
15
|
+
default:
|
|
16
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
17
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
18
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
19
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
20
|
+
if (t[2]) _.ops.pop();
|
|
21
|
+
_.trys.pop(); continue;
|
|
22
|
+
}
|
|
23
|
+
op = body.call(thisArg, _);
|
|
24
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
25
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
var __values = (this && this.__values) || function (o) {
|
|
29
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;
|
|
30
|
+
if (m) return m.call(o);
|
|
31
|
+
return {
|
|
32
|
+
next: function () {
|
|
33
|
+
if (o && i >= o.length) o = void 0;
|
|
34
|
+
return { value: o && o[i++], done: !o };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
+
if (!m) return o;
|
|
41
|
+
var i = m.call(o), r, ar = [], e;
|
|
42
|
+
try {
|
|
43
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
+
}
|
|
45
|
+
catch (error) { e = { error: error }; }
|
|
46
|
+
finally {
|
|
47
|
+
try {
|
|
48
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
+
}
|
|
50
|
+
finally { if (e) throw e.error; }
|
|
51
|
+
}
|
|
52
|
+
return ar;
|
|
53
|
+
};
|
|
54
|
+
import { DocxError } from '../../core/errors/docx-error';
|
|
55
|
+
/**
|
|
56
|
+
* Runtime validation for public `set` boundaries (TS types are `string`).
|
|
57
|
+
*/
|
|
58
|
+
function requireTrimmedFontName(value, role) {
|
|
59
|
+
if (value === null || value === undefined) {
|
|
60
|
+
throw new DocxError('content/unsupported', role + " must not be empty");
|
|
61
|
+
}
|
|
62
|
+
var trimmed = String(value).trim();
|
|
63
|
+
if (trimmed.length === 0) {
|
|
64
|
+
throw new DocxError('content/unsupported', role + " must not be empty");
|
|
65
|
+
}
|
|
66
|
+
return trimmed;
|
|
67
|
+
}
|
|
68
|
+
function substitutionPairs(part) {
|
|
69
|
+
var e_1, _a;
|
|
70
|
+
var pairs = [];
|
|
71
|
+
try {
|
|
72
|
+
for (var _b = __values(part.fonts()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
73
|
+
var font = _c.value;
|
|
74
|
+
var alternate = font.alternateName;
|
|
75
|
+
if (alternate !== undefined && alternate.trim().length > 0) {
|
|
76
|
+
pairs.push([font.name, alternate]);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
81
|
+
finally {
|
|
82
|
+
try {
|
|
83
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
84
|
+
}
|
|
85
|
+
finally { if (e_1) throw e_1.error; }
|
|
86
|
+
}
|
|
87
|
+
return pairs;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* {@link FontSubstitutionTable} backed by a live {@link FontTablePart}.
|
|
91
|
+
*
|
|
92
|
+
* @private
|
|
93
|
+
* Constructed by the font-table feature host (`WordDocument.fontSubstitutionTable`).
|
|
94
|
+
*/
|
|
95
|
+
var FontSubstitutionTableImpl = /** @class */ (function () {
|
|
96
|
+
/**
|
|
97
|
+
* @private
|
|
98
|
+
*/
|
|
99
|
+
function FontSubstitutionTableImpl(part) {
|
|
100
|
+
this.part = part;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* @private
|
|
104
|
+
* Live part this facade projects (same instance as {@link fontTableFor}). */
|
|
105
|
+
FontSubstitutionTableImpl.prototype.boundPart = function () {
|
|
106
|
+
return this.part;
|
|
107
|
+
};
|
|
108
|
+
Object.defineProperty(FontSubstitutionTableImpl.prototype, "size", {
|
|
109
|
+
get: function () {
|
|
110
|
+
return substitutionPairs(this.part).length;
|
|
111
|
+
},
|
|
112
|
+
enumerable: true,
|
|
113
|
+
configurable: true
|
|
114
|
+
});
|
|
115
|
+
FontSubstitutionTableImpl.prototype.set = function (primaryFont, alternateFont) {
|
|
116
|
+
var primary = requireTrimmedFontName(primaryFont, 'Font name');
|
|
117
|
+
var alternate = requireTrimmedFontName(alternateFont, 'Alternate font name');
|
|
118
|
+
var entry = this.part.appendFont(primary);
|
|
119
|
+
entry.alternateName = alternate;
|
|
120
|
+
return this;
|
|
121
|
+
};
|
|
122
|
+
FontSubstitutionTableImpl.prototype.get = function (primaryFont) {
|
|
123
|
+
var __ts33_0;
|
|
124
|
+
if (primaryFont === null || primaryFont === undefined) {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
var key = String(primaryFont).trim();
|
|
128
|
+
if (key.length === 0) {
|
|
129
|
+
return undefined;
|
|
130
|
+
}
|
|
131
|
+
var alternate = ((__ts33_0 = this.part.font(key)), __ts33_0 == null ? undefined : __ts33_0.alternateName);
|
|
132
|
+
if (alternate === undefined || alternate.trim().length === 0) {
|
|
133
|
+
return undefined;
|
|
134
|
+
}
|
|
135
|
+
return alternate;
|
|
136
|
+
};
|
|
137
|
+
FontSubstitutionTableImpl.prototype.has = function (primaryFont) {
|
|
138
|
+
return this.get(primaryFont) !== undefined;
|
|
139
|
+
};
|
|
140
|
+
FontSubstitutionTableImpl.prototype.delete = function (primaryFont) {
|
|
141
|
+
if (primaryFont === null || primaryFont === undefined) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
var key = String(primaryFont).trim();
|
|
145
|
+
if (key.length === 0) {
|
|
146
|
+
return false;
|
|
147
|
+
}
|
|
148
|
+
var entry = this.part.font(key);
|
|
149
|
+
if (entry === undefined) {
|
|
150
|
+
return false;
|
|
151
|
+
}
|
|
152
|
+
if (entry.alternateName === undefined || entry.alternateName.trim().length === 0) {
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
entry.alternateName = undefined;
|
|
156
|
+
return true;
|
|
157
|
+
};
|
|
158
|
+
FontSubstitutionTableImpl.prototype.clear = function () {
|
|
159
|
+
var e_2, _a;
|
|
160
|
+
try {
|
|
161
|
+
for (var _b = __values(this.part.fonts()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
162
|
+
var font = _c.value;
|
|
163
|
+
if (font.alternateName !== undefined) {
|
|
164
|
+
font.alternateName = undefined;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
169
|
+
finally {
|
|
170
|
+
try {
|
|
171
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
172
|
+
}
|
|
173
|
+
finally { if (e_2) throw e_2.error; }
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
FontSubstitutionTableImpl.prototype.entries = function () {
|
|
177
|
+
return __generator(this, function (_a) {
|
|
178
|
+
switch (_a.label) {
|
|
179
|
+
case 0: return [5 /*yield**/, __values(substitutionPairs(this.part))];
|
|
180
|
+
case 1:
|
|
181
|
+
_a.sent();
|
|
182
|
+
return [2 /*return*/];
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
};
|
|
186
|
+
FontSubstitutionTableImpl.prototype.keys = function () {
|
|
187
|
+
var e_3, _a, _b, _c, _d, primary, e_3_1;
|
|
188
|
+
return __generator(this, function (_e) {
|
|
189
|
+
switch (_e.label) {
|
|
190
|
+
case 0:
|
|
191
|
+
_e.trys.push([0, 5, 6, 7]);
|
|
192
|
+
_b = __values(substitutionPairs(this.part)), _c = _b.next();
|
|
193
|
+
_e.label = 1;
|
|
194
|
+
case 1:
|
|
195
|
+
if (!!_c.done) return [3 /*break*/, 4];
|
|
196
|
+
_d = __read(_c.value, 1), primary = _d[0];
|
|
197
|
+
return [4 /*yield*/, primary];
|
|
198
|
+
case 2:
|
|
199
|
+
_e.sent();
|
|
200
|
+
_e.label = 3;
|
|
201
|
+
case 3:
|
|
202
|
+
_c = _b.next();
|
|
203
|
+
return [3 /*break*/, 1];
|
|
204
|
+
case 4: return [3 /*break*/, 7];
|
|
205
|
+
case 5:
|
|
206
|
+
e_3_1 = _e.sent();
|
|
207
|
+
e_3 = { error: e_3_1 };
|
|
208
|
+
return [3 /*break*/, 7];
|
|
209
|
+
case 6:
|
|
210
|
+
try {
|
|
211
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
212
|
+
}
|
|
213
|
+
finally { if (e_3) throw e_3.error; }
|
|
214
|
+
return [7 /*endfinally*/];
|
|
215
|
+
case 7: return [2 /*return*/];
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
};
|
|
219
|
+
FontSubstitutionTableImpl.prototype.values = function () {
|
|
220
|
+
var e_4, _a, _b, _c, _d, alternate, e_4_1;
|
|
221
|
+
return __generator(this, function (_e) {
|
|
222
|
+
switch (_e.label) {
|
|
223
|
+
case 0:
|
|
224
|
+
_e.trys.push([0, 5, 6, 7]);
|
|
225
|
+
_b = __values(substitutionPairs(this.part)), _c = _b.next();
|
|
226
|
+
_e.label = 1;
|
|
227
|
+
case 1:
|
|
228
|
+
if (!!_c.done) return [3 /*break*/, 4];
|
|
229
|
+
_d = __read(_c.value, 2), alternate = _d[1];
|
|
230
|
+
return [4 /*yield*/, alternate];
|
|
231
|
+
case 2:
|
|
232
|
+
_e.sent();
|
|
233
|
+
_e.label = 3;
|
|
234
|
+
case 3:
|
|
235
|
+
_c = _b.next();
|
|
236
|
+
return [3 /*break*/, 1];
|
|
237
|
+
case 4: return [3 /*break*/, 7];
|
|
238
|
+
case 5:
|
|
239
|
+
e_4_1 = _e.sent();
|
|
240
|
+
e_4 = { error: e_4_1 };
|
|
241
|
+
return [3 /*break*/, 7];
|
|
242
|
+
case 6:
|
|
243
|
+
try {
|
|
244
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
245
|
+
}
|
|
246
|
+
finally { if (e_4) throw e_4.error; }
|
|
247
|
+
return [7 /*endfinally*/];
|
|
248
|
+
case 7: return [2 /*return*/];
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
};
|
|
252
|
+
FontSubstitutionTableImpl.prototype[Symbol.iterator] = function () {
|
|
253
|
+
return this.entries();
|
|
254
|
+
};
|
|
255
|
+
return FontSubstitutionTableImpl;
|
|
256
|
+
}());
|
|
257
|
+
export { FontSubstitutionTableImpl };
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import { NamespaceDeclaration, OpenXmlAttribute, OpenXmlChild, OpenXmlElement } from '../../core/xml/index';
|
|
2
|
+
/**
|
|
3
|
+
* Font family values for `w:family/@w:val` (`ST_FontFamily`, Transitional `wml.xsd`).
|
|
4
|
+
*
|
|
5
|
+
* @private
|
|
6
|
+
*/
|
|
7
|
+
export declare const FontFamily: {
|
|
8
|
+
Decorative: string;
|
|
9
|
+
Modern: string;
|
|
10
|
+
Roman: string;
|
|
11
|
+
Script: string;
|
|
12
|
+
Swiss: string;
|
|
13
|
+
Auto: string;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* @private
|
|
17
|
+
*/
|
|
18
|
+
export declare type FontFamily = (typeof FontFamily)[keyof typeof FontFamily];
|
|
19
|
+
/**
|
|
20
|
+
* Pitch values for `w:pitch/@w:val` (`ST_Pitch`, Transitional `wml.xsd`).
|
|
21
|
+
*
|
|
22
|
+
* @private
|
|
23
|
+
*/
|
|
24
|
+
export declare const FontPitch: {
|
|
25
|
+
Fixed: string;
|
|
26
|
+
Variable: string;
|
|
27
|
+
Default: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* @private
|
|
31
|
+
*/
|
|
32
|
+
export declare type FontPitch = (typeof FontPitch)[keyof typeof FontPitch];
|
|
33
|
+
/**
|
|
34
|
+
* Embedded font face slot (`w:embedRegular` / `Bold` / `Italic` / `BoldItalic`).
|
|
35
|
+
*
|
|
36
|
+
* @private
|
|
37
|
+
*/
|
|
38
|
+
export declare const FontEmbedSlot: {
|
|
39
|
+
Regular: string;
|
|
40
|
+
Bold: string;
|
|
41
|
+
Italic: string;
|
|
42
|
+
BoldItalic: string;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* @private
|
|
46
|
+
*/
|
|
47
|
+
export declare type FontEmbedSlot = (typeof FontEmbedSlot)[keyof typeof FontEmbedSlot];
|
|
48
|
+
/**
|
|
49
|
+
* Unicode / code-page bitmasks from `w:sig` (`CT_FontSig`).
|
|
50
|
+
* Values are stored hex strings (`ST_UcharHexNumber` / long-hex attributes).
|
|
51
|
+
*
|
|
52
|
+
* Required attributes per Transitional `wml.xsd`: `usb0`–`usb3`, `csb0`, `csb1`.
|
|
53
|
+
*
|
|
54
|
+
* @private
|
|
55
|
+
*/
|
|
56
|
+
export interface FontSignature {
|
|
57
|
+
readonly usb0: string;
|
|
58
|
+
readonly usb1: string;
|
|
59
|
+
readonly usb2: string;
|
|
60
|
+
readonly usb3: string;
|
|
61
|
+
readonly csb0: string;
|
|
62
|
+
readonly csb1: string;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* One embedded font relationship reference on a font row (`CT_FontRel`).
|
|
66
|
+
*
|
|
67
|
+
* Metadata only — binary ODTTF authoring / decode is out of scope.
|
|
68
|
+
*
|
|
69
|
+
* @private
|
|
70
|
+
*/
|
|
71
|
+
export interface FontEmbedRef {
|
|
72
|
+
/**
|
|
73
|
+
* @private
|
|
74
|
+
*/
|
|
75
|
+
readonly slot: FontEmbedSlot;
|
|
76
|
+
/**
|
|
77
|
+
* @private
|
|
78
|
+
* `r:id` targeting the font part relationship. */
|
|
79
|
+
readonly relationshipId: string;
|
|
80
|
+
/**
|
|
81
|
+
* @private
|
|
82
|
+
* Optional `w:fontKey`. */
|
|
83
|
+
readonly fontKey: string | undefined;
|
|
84
|
+
/**
|
|
85
|
+
* @private
|
|
86
|
+
* Optional `w:subsetted`. */
|
|
87
|
+
readonly subsetted: boolean | undefined;
|
|
88
|
+
}
|
|
89
|
+
interface ModeledEmbed {
|
|
90
|
+
slot: FontEmbedSlot;
|
|
91
|
+
relationshipId: string;
|
|
92
|
+
fontKey: string | undefined;
|
|
93
|
+
subsetted: boolean | undefined;
|
|
94
|
+
extraAttributes: OpenXmlAttribute[];
|
|
95
|
+
children: OpenXmlChild[];
|
|
96
|
+
namespaceDeclarations: NamespaceDeclaration[];
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* One `w:font` row in `fontTable.xml` (`CT_Font`, Transitional `wml.xsd`).
|
|
100
|
+
*
|
|
101
|
+
* Models the full schema child sequence after `w:name`:
|
|
102
|
+
* `altName`, `panose1`, `charset`, `family`, `notTrueType`, `pitch`, `sig`,
|
|
103
|
+
* `embedRegular`, `embedBold`, `embedItalic`, `embedBoldItalic`, then residual
|
|
104
|
+
* unknown children.
|
|
105
|
+
*
|
|
106
|
+
* Substitution remains `w:altName` (ECMA-376-1 §17.8.3.1). Embed APIs expose
|
|
107
|
+
* relationship metadata only; they do not author or decode ODTTF binaries.
|
|
108
|
+
* `clearEmbed` drops the corresponding child element (markup only); package
|
|
109
|
+
* orphan cleanup of the target part is not performed in this MVP.
|
|
110
|
+
*
|
|
111
|
+
* @private
|
|
112
|
+
*/
|
|
113
|
+
export declare class FontTableFont {
|
|
114
|
+
private readonly nameValue;
|
|
115
|
+
private alternateNameValue;
|
|
116
|
+
private panoseValue;
|
|
117
|
+
private charsetValue;
|
|
118
|
+
private familyValue;
|
|
119
|
+
/** Invalid-on-load family string preserved for round-trip when typed family is unset. */
|
|
120
|
+
private familyRawValue;
|
|
121
|
+
private notTrueTypeValue;
|
|
122
|
+
private pitchValue;
|
|
123
|
+
private pitchRawValue;
|
|
124
|
+
private signatureValue;
|
|
125
|
+
private readonly embeds;
|
|
126
|
+
private readonly residualChildren;
|
|
127
|
+
private readonly extraAttributes;
|
|
128
|
+
private readonly markDirty;
|
|
129
|
+
/**
|
|
130
|
+
* @private
|
|
131
|
+
*/
|
|
132
|
+
constructor(name: string, options: {
|
|
133
|
+
readonly alternateName?: string | undefined;
|
|
134
|
+
readonly panose?: string | undefined;
|
|
135
|
+
readonly charset?: string | undefined;
|
|
136
|
+
readonly family?: FontFamily | undefined;
|
|
137
|
+
readonly familyRaw?: string | undefined;
|
|
138
|
+
readonly notTrueType?: boolean | undefined;
|
|
139
|
+
readonly pitch?: FontPitch | undefined;
|
|
140
|
+
readonly pitchRaw?: string | undefined;
|
|
141
|
+
readonly signature?: FontSignature | undefined;
|
|
142
|
+
readonly embeds?: ReadonlyArray<ModeledEmbed>;
|
|
143
|
+
readonly residualChildren?: ReadonlyArray<OpenXmlElement>;
|
|
144
|
+
readonly extraAttributes?: ReadonlyArray<OpenXmlAttribute>;
|
|
145
|
+
}, markDirty: () => void);
|
|
146
|
+
/**
|
|
147
|
+
* Primary name from `w:font/@w:name` (stored casing preserved).
|
|
148
|
+
*
|
|
149
|
+
* @public
|
|
150
|
+
*/
|
|
151
|
+
readonly name: string;
|
|
152
|
+
/**
|
|
153
|
+
* Alternate name list as stored on `w:altName/@w:val`, or `undefined` if absent.
|
|
154
|
+
*
|
|
155
|
+
* ECMA-376-1 §17.8.3.1: comma-delimited list; writers may set a single name or a
|
|
156
|
+
* full list string. Assign `undefined` (or empty / whitespace-only) to remove
|
|
157
|
+
* `w:altName`; the font entry is kept. Empty `w:val` is never emitted.
|
|
158
|
+
*
|
|
159
|
+
* @public
|
|
160
|
+
*/
|
|
161
|
+
alternateName: string | undefined;
|
|
162
|
+
/**
|
|
163
|
+
* Split {@link alternateName} on commas; empty segments (adjacent commas) dropped
|
|
164
|
+
* per ECMA. Empty array when no `altName`.
|
|
165
|
+
*
|
|
166
|
+
* @public
|
|
167
|
+
*/
|
|
168
|
+
readonly alternateNames: ReadonlyArray<string>;
|
|
169
|
+
/**
|
|
170
|
+
* PANOSE-1 classification from `w:panose1/@w:val` (`ST_Panose`), or `undefined`.
|
|
171
|
+
* Stored as the attribute string. Assign `undefined` / empty to clear.
|
|
172
|
+
*
|
|
173
|
+
* @public
|
|
174
|
+
*/
|
|
175
|
+
panose: string | undefined;
|
|
176
|
+
/**
|
|
177
|
+
* Character set from `w:charset/@w:val` (`ST_UcharHexNumber`), or `undefined`.
|
|
178
|
+
* Stored as the attribute string. Assign `undefined` / empty to clear.
|
|
179
|
+
*
|
|
180
|
+
* @public
|
|
181
|
+
*/
|
|
182
|
+
charset: string | undefined;
|
|
183
|
+
/**
|
|
184
|
+
* Font family from `w:family/@w:val` (`ST_FontFamily`), or `undefined` when
|
|
185
|
+
* absent or not a known enumeration value on load.
|
|
186
|
+
*
|
|
187
|
+
* @throws RangeError when assigning a string that is not a {@link FontFamily} value.
|
|
188
|
+
*
|
|
189
|
+
* @public
|
|
190
|
+
*/
|
|
191
|
+
family: FontFamily | undefined;
|
|
192
|
+
/**
|
|
193
|
+
* `w:notTrueType` (`CT_OnOff`). `true` when the element is present without `val`
|
|
194
|
+
* or with a true `ST_OnOff` value; `false` when explicitly off; `undefined` when
|
|
195
|
+
* the child is absent.
|
|
196
|
+
*
|
|
197
|
+
* @public
|
|
198
|
+
*/
|
|
199
|
+
notTrueType: boolean | undefined;
|
|
200
|
+
/**
|
|
201
|
+
* Pitch from `w:pitch/@w:val` (`ST_Pitch`), or `undefined` when absent or not a
|
|
202
|
+
* known enumeration value on load.
|
|
203
|
+
*
|
|
204
|
+
* @throws RangeError when assigning a string that is not a {@link FontPitch} value.
|
|
205
|
+
*
|
|
206
|
+
* @public
|
|
207
|
+
*/
|
|
208
|
+
pitch: FontPitch | undefined;
|
|
209
|
+
/**
|
|
210
|
+
* Supported Unicode / code-page bitmasks from `w:sig` (`CT_FontSig`), or
|
|
211
|
+
* `undefined` when the child is absent or missing a required attribute.
|
|
212
|
+
*
|
|
213
|
+
* @public
|
|
214
|
+
*/
|
|
215
|
+
signature: FontSignature | undefined;
|
|
216
|
+
/**
|
|
217
|
+
* Embedded font relationship metadata for each modeled embed child present on
|
|
218
|
+
* this row, in schema slot order.
|
|
219
|
+
*
|
|
220
|
+
* @public
|
|
221
|
+
*/
|
|
222
|
+
embedRefs(): ReadonlyArray<FontEmbedRef>;
|
|
223
|
+
/**
|
|
224
|
+
* Embed metadata for `slot`, or `undefined` when that child is absent.
|
|
225
|
+
*
|
|
226
|
+
* @public
|
|
227
|
+
*/
|
|
228
|
+
embedRef(slot: FontEmbedSlot): FontEmbedRef | undefined;
|
|
229
|
+
/**
|
|
230
|
+
* Drop the embed child for `slot` from this font row (markup only).
|
|
231
|
+
* Does not remove package parts or relationships targeted by `r:id`.
|
|
232
|
+
* No-op when the slot is already absent.
|
|
233
|
+
*
|
|
234
|
+
* @public
|
|
235
|
+
*/
|
|
236
|
+
clearEmbed(slot: FontEmbedSlot): void;
|
|
237
|
+
/**
|
|
238
|
+
* @private
|
|
239
|
+
*/
|
|
240
|
+
serialize(): OpenXmlElement;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Parse one `w:font` element into a {@link FontTableFont}, or `undefined` when
|
|
244
|
+
* `@w:name` is missing/empty.
|
|
245
|
+
*
|
|
246
|
+
* @private
|
|
247
|
+
*/
|
|
248
|
+
export declare function parseFontTableFont(element: OpenXmlElement, markDirty: () => void): FontTableFont | undefined;
|
|
249
|
+
/**
|
|
250
|
+
* Create a minimal font entry (`@w:name` only).
|
|
251
|
+
*
|
|
252
|
+
* @private
|
|
253
|
+
*/
|
|
254
|
+
export declare function createFontTableFont(name: string, markDirty: () => void): FontTableFont;
|
|
255
|
+
export {};
|