@a3s-lab/office 0.28.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -1
- package/dist/0~1403.js +1 -1
- package/dist/0~4980.js +1 -1
- package/dist/0~5093.js +64 -5
- package/dist/0~7043.js +241 -241
- package/dist/0~7048.js +1 -1
- package/dist/0~7614.js +1 -1
- package/dist/0~document-editor.js +433 -10
- package/dist/0~presentation-editor.js +1 -1
- package/dist/0~spreadsheet-editor.js +1 -2
- package/dist/0~work-docx-export.js +141 -3
- package/dist/0~work-docx-import.js +5 -3
- package/dist/0~work-office-diagnostics.js +46 -3
- package/dist/0~work-pptx-export.js +1 -1
- package/dist/0~work-pptx-import.js +1 -1
- package/dist/0~work-presentation-charts.js +1 -1
- package/dist/1544.js +1 -1
- package/dist/4104.js +2 -2
- package/dist/4121.js +1510 -0
- package/dist/6282.js +59 -684
- package/dist/8715.js +1 -1
- package/dist/core.js +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/features/work/editors/document-command-catalog.d.ts +9 -0
- package/dist/internal/features/work/editors/document-font-dialog-model.d.ts +5 -2
- package/dist/internal/features/work/editors/document-font-dialog-run-border-model.d.ts +24 -0
- package/dist/internal/features/work/editors/document-font-dialog-run-border-section.d.ts +10 -0
- package/dist/internal/features/work/work-document-character-formatting.d.ts +4 -0
- package/dist/internal/features/work/work-document-format-changes.d.ts +1 -0
- package/dist/internal/features/work/work-document-run-border.d.ts +11 -0
- package/dist/internal/features/work/work-document-word-line-metrics.d.ts +1 -0
- package/dist/internal/features/work/work-docx-run-border-diagnostics.d.ts +3 -0
- package/dist/internal/features/work/work-docx-run-border-export.d.ts +17 -0
- package/dist/internal/features/work/work-docx-run-border.d.ts +20 -0
- package/dist/internal/features/work/work-docx-run-formatting-import.d.ts +2 -0
- package/dist/office-kernel.wasm +0 -0
- package/dist/styles.css +31 -0
- package/docs/latest/en/browser-editor-architecture.md +22 -0
- package/package.json +4 -1
- package/dist/5184.js +0 -662
- package/dist/9424.js +0 -16
package/README.md
CHANGED
|
@@ -110,7 +110,7 @@ baseline rather than one specific release.
|
|
|
110
110
|
|
|
111
111
|
| Capability | A3S Office today | Traditional Office baseline |
|
|
112
112
|
| --- | --- | --- |
|
|
113
|
-
| Text, paragraphs, lists, and styles | **Supported** — structured editing, independent native ASCII, high ANSI, East Asian, and complex-script font slots with direct/theme identity, native all-caps and small-caps effects, exact DOCX character scale plus signed spacing, half-point kerning thresholds, all five native East Asian emphasis marks, native hidden text with explicit visible resets, four independent native outline/shadow/emboss/imprint effects with conflict-safe authoring, and baseline position in one advanced font dialog, all 18 native DOCX underline values with direct or theme color identity, independent native single/double strikethrough with explicit resets, formatting revisions, clipboard, format painter, and undo/redo | Mature authoring with a broader long-tail style and typography catalog |
|
|
113
|
+
| Text, paragraphs, lists, and styles | **Supported** — structured editing, independent native ASCII, high ANSI, East Asian, and complex-script font slots with direct/theme identity, native all-caps and small-caps effects, exact DOCX character scale plus signed spacing, half-point kerning thresholds, all five native East Asian emphasis marks, native hidden text with explicit visible resets, native character borders with 25 visible line styles plus `nil` and `none`, direct or theme color, width, spacing, shadow, and frame semantics, four independent native outline/shadow/emboss/imprint effects with conflict-safe authoring, and baseline position in one advanced font dialog, all 18 native DOCX underline values with direct or theme color identity, independent native single/double strikethrough with explicit resets, formatting revisions, clipboard, format painter, and undo/redo | Mature authoring with a broader long-tail style and typography catalog |
|
|
114
114
|
| Page layout and rendering | **Partial** — sections, margins, page size, columns, headers/footers, fields, and live pagination | Desktop-grade pagination, print layout, and vector output |
|
|
115
115
|
| Tables, pictures, and equations | **Partial** — rich table geometry, floating pictures, crop/wrap, and structured OMML | Broader drawings, text boxes, charts, WordArt, and SmartArt |
|
|
116
116
|
| Comments, revisions, and collaboration | **Partial** — comments, suggestions, text/format revisions, decisions, Yjs presence, and host relay contracts | Full revision families plus integrated sharing and review services |
|
|
@@ -732,6 +732,31 @@ model. CSS provides bounded browser and PDF paint projections while eligible
|
|
|
732
732
|
paragraphs remain on the Worker/WASM layout path. The Playground's **文字效果**
|
|
733
733
|
template demonstrates all four effects and the conflict-safe transition.
|
|
734
734
|
|
|
735
|
+
Native Writer character borders retain all 25 visible WordprocessingML
|
|
736
|
+
`w:bdr` line styles plus explicit `nil` and `none` resets. The typed model keeps
|
|
737
|
+
direct or theme colors with tint and shade, widths from 2 through 96
|
|
738
|
+
eighth-points, text spacing from 0 through 31 points, and explicit shadow and
|
|
739
|
+
frame flags. The Home Font group exposes a direct Character Border toggle, and
|
|
740
|
+
the shared `Cmd/Ctrl+D` Advanced Font Settings dialog distinguishes mixed,
|
|
741
|
+
Follow style, explicit no-border, and editable border states. Line style,
|
|
742
|
+
color, width, spacing, shadow, and frame changes apply through one transaction
|
|
743
|
+
and one Undo record; Format Painter uses the same mark. Traditional Office
|
|
744
|
+
defines no dedicated shortcut for this command, so A3S Office does not invent
|
|
745
|
+
one.
|
|
746
|
+
|
|
747
|
+
Document defaults, paragraph and character styles, body text, headers,
|
|
748
|
+
footers, footnotes, endnotes, formatting revisions, strict or transitional
|
|
749
|
+
DOCX import, exact export, and reopen share the model. Malformed, duplicated,
|
|
750
|
+
misplaced, namespace-spoofed, child- or text-bearing, extra-attribute,
|
|
751
|
+
art-style, out-of-range, and unresolved-theme input fails closed. The DOM uses
|
|
752
|
+
`data-office-run-border`; CSS renders every edge with bounded line-style,
|
|
753
|
+
padding, shadow, and cloned-fragment projections. Visible character borders use
|
|
754
|
+
browser-authoritative line measurement because border and padding alter inline
|
|
755
|
+
geometry, while explicit `nil` and `none` remain eligible for Worker/WASM
|
|
756
|
+
layout. Browser and PDF paint are bounded visual approximations; the OOXML
|
|
757
|
+
semantics remain exact. The Playground's **字符边框** template exercises the
|
|
758
|
+
complete authoring and one-step Undo path.
|
|
759
|
+
|
|
735
760
|
Supported native OMML equations now survive as bounded structured objects in
|
|
736
761
|
the document body, headers, footers, footnotes, and endnotes. Inline and display
|
|
737
762
|
math, Unicode runs with literal/normal-text semantics, math script/style,
|
|
@@ -1432,6 +1457,7 @@ without hard-coded return URLs.
|
|
|
1432
1457
|
|
|
1433
1458
|
- [Live Playground](https://a3s-lab.github.io/Office/)
|
|
1434
1459
|
- [Documentation center](https://a3s-lab.github.io/Office/docs/)
|
|
1460
|
+
- [A3S Office 0.29.0 documentation](https://a3s-lab.github.io/Office/docs/0.29.0/)
|
|
1435
1461
|
- [A3S Office 0.28.0 documentation](https://a3s-lab.github.io/Office/docs/0.28.0/)
|
|
1436
1462
|
- [A3S Office 0.27.0 documentation](https://a3s-lab.github.io/Office/docs/0.27.0/)
|
|
1437
1463
|
- [A3S Office 0.26.0 documentation](https://a3s-lab.github.io/Office/docs/0.26.0/)
|
package/dist/0~1403.js
CHANGED
package/dist/0~4980.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import jszip from "jszip";
|
|
2
2
|
import { documentNoteKey } from "./6282.js";
|
|
3
|
-
import { directChild, xmlNamespacePrefix, attribute, parseXml } from "./
|
|
3
|
+
import { directChild, xmlNamespacePrefix, attribute, parseXml } from "./4121.js";
|
|
4
4
|
import { DEFAULT_DOCUMENT_PAGE_COLOR, normalizeDocumentPageColor } from "./0~work-document-page-color.js";
|
|
5
5
|
const MAX_NATIVE_ID = 2147483647;
|
|
6
6
|
const MIN_NATIVE_COMMENT_ID = -2147483648;
|
package/dist/0~5093.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DOCUMENT_PARAGRAPH_BORDER_STYLES, normalizeDocumentParagraphBorders as work_document_paragraph_borders_normalizeDocumentParagraphBorders, DOCUMENT_PARAGRAPH_BORDER_EDGES, documentRunBorderDomAttributes, normalizeDocumentParagraphBorder, normalizeDocumentRunBorder, serializeDocumentRunBorder, descendants, attribute as work_ooxml_package_attribute, serializeDocxThemeReference, directChildren as work_ooxml_package_directChildren, xmlNamespacePrefix, documentParagraphBordersDomAttributes, directChild, childPath } from "./4121.js";
|
|
2
2
|
import { docxThemeFont, XML_NAMESPACE as work_docx_settings_xml_XML_NAMESPACE, XMLNS_NAMESPACE as work_docx_settings_xml_XMLNS_NAMESPACE, STRICT_WORDPROCESSING_NAMESPACE, docxCharacterSpacingTwipsFromProperties, parseBoundedDocxInteger, xmlAttributeLocalName, docxCharacterScalePercentFromProperties, resolveDocxEmphasisMark, docxCharacterPositionHalfPointsFromProperties, docxThemeColor, parseDocxParagraphDefaultCollapsed, resolveDocxKerningThresholdHalfPoints, resolveDocxThemeResolver as work_docx_theme_resolveDocxThemeResolver, DOCX_WORDPROCESSING_NAMESPACES, xmlAttributeNamespace, parseDocxTwipsMeasure } from "./0~7043.js";
|
|
3
|
-
import { normalizeDocumentEmphasisMark, documentWordLineHeightFactor, normalizeDocumentPageBorders,
|
|
3
|
+
import { normalizeDocumentEmphasisMark, documentWordLineHeightFactor, normalizeDocumentPageBorders, documentCharacterPositionDomAttributes, DOCUMENT_PAGE_BORDER_EDGES, normalizeDocumentTabStops, documentTextCaseFromWordFlags, DOCUMENT_PARAGRAPH_SHADING_PATTERNS, documentStrikeDomAttributes, documentAutoLineHeight, documentScriptFontFallbackSlots, normalizeDocumentUnderlineColor, documentScriptFontsDomAttributes, documentKerningDomAttributes, documentCharacterScaleDomAttributes, documentParagraphShadingDomAttributes, normalizeDocumentScriptFontHint, serializeDocumentParagraphFormatting, normalizeDocumentPaperSource, documentEquationText, normalizeDocumentScriptFonts, documentLegacyTextEffectsDomAttributes, documentLegacyTextEffectsConflict, documentCharacterSpacingDomAttributes, normalizeDocumentParagraphIndent, documentScriptFontFamily, normalizeDocumentThemeFont, normalizeDocumentEquation, renderDocumentAutoLineHeight, documentUnderlineDomAttributes, normalizeDocumentUnderlineStyle, normalizeDocumentFontName, applyDocumentTextCaseStyle, documentHiddenTextDomAttributes, importedDocumentCharacterFormatting, DOCUMENT_LEGACY_TEXT_EFFECT_NAMES, createDocumentEquationElement, normalizeDocumentPageGeometry, serializeDocumentTabStops, documentEmphasisMarkDomAttributes, normalizeDocumentPageMargins, documentScriptFontSegments } from "./6282.js";
|
|
4
4
|
function docxCaptionSequenceKind(instruction) {
|
|
5
5
|
const identifier = /^\s*SEQ\s+([^\s\\]+)/i.exec(instruction)?.[1]?.toLowerCase();
|
|
6
6
|
if (!identifier) return null;
|
|
@@ -4907,6 +4907,57 @@ function textNodes(root) {
|
|
|
4907
4907
|
while(walker.nextNode())nodes.push(walker.currentNode);
|
|
4908
4908
|
return nodes;
|
|
4909
4909
|
}
|
|
4910
|
+
function inspectDocxRunBorder(properties, themeSource) {
|
|
4911
|
+
return inspectDocxRunBorderWithTheme(properties, work_docx_theme_resolveDocxThemeResolver(themeSource));
|
|
4912
|
+
}
|
|
4913
|
+
function resolveDocxRunBorder(propertySources, themeSource) {
|
|
4914
|
+
const theme = work_docx_theme_resolveDocxThemeResolver(themeSource);
|
|
4915
|
+
let border;
|
|
4916
|
+
let invalidCount = 0;
|
|
4917
|
+
let spoofedCount = 0;
|
|
4918
|
+
for (const properties of propertySources){
|
|
4919
|
+
const inspection = inspectDocxRunBorderWithTheme(properties, theme);
|
|
4920
|
+
spoofedCount += inspection.spoofedCount;
|
|
4921
|
+
if ('valid' === inspection.status) border = inspection.value;
|
|
4922
|
+
else if ('invalid' === inspection.status) {
|
|
4923
|
+
invalidCount += 1;
|
|
4924
|
+
border = {
|
|
4925
|
+
style: 'nil'
|
|
4926
|
+
};
|
|
4927
|
+
}
|
|
4928
|
+
}
|
|
4929
|
+
return {
|
|
4930
|
+
border,
|
|
4931
|
+
invalidCount,
|
|
4932
|
+
spoofedCount
|
|
4933
|
+
};
|
|
4934
|
+
}
|
|
4935
|
+
function inspectDocxRunBorderWithTheme(properties, theme) {
|
|
4936
|
+
if (!properties) return {
|
|
4937
|
+
status: 'absent',
|
|
4938
|
+
spoofedCount: 0
|
|
4939
|
+
};
|
|
4940
|
+
const matches = work_ooxml_package_directChildren(properties, 'bdr');
|
|
4941
|
+
if (!matches.length) return {
|
|
4942
|
+
status: 'absent',
|
|
4943
|
+
spoofedCount: 0
|
|
4944
|
+
};
|
|
4945
|
+
const native = matches.filter((element)=>element.namespaceURI === properties.namespaceURI);
|
|
4946
|
+
const spoofedCount = matches.length - native.length;
|
|
4947
|
+
if (1 !== matches.length || 1 !== native.length) return {
|
|
4948
|
+
status: 'invalid',
|
|
4949
|
+
spoofedCount
|
|
4950
|
+
};
|
|
4951
|
+
const parsed = normalizeDocumentRunBorder(parseDocxBorderElement(native[0], theme));
|
|
4952
|
+
return parsed ? {
|
|
4953
|
+
status: 'valid',
|
|
4954
|
+
value: parsed,
|
|
4955
|
+
spoofedCount
|
|
4956
|
+
} : {
|
|
4957
|
+
status: 'invalid',
|
|
4958
|
+
spoofedCount
|
|
4959
|
+
};
|
|
4960
|
+
}
|
|
4910
4961
|
const work_docx_paragraph_shading_import_WORD_NAMESPACE = 'http://schemas.openxmlformats.org/wordprocessingml/2006/main';
|
|
4911
4962
|
const work_docx_paragraph_shading_import_XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace';
|
|
4912
4963
|
const work_docx_paragraph_shading_import_XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/';
|
|
@@ -6892,7 +6943,8 @@ const SUPPORTED_RUN_PROPERTY_CHANGE_CHILDREN = new Set([
|
|
|
6892
6943
|
'cs',
|
|
6893
6944
|
'rtl',
|
|
6894
6945
|
'em',
|
|
6895
|
-
'vertAlign'
|
|
6946
|
+
'vertAlign',
|
|
6947
|
+
'bdr'
|
|
6896
6948
|
]);
|
|
6897
6949
|
function createImportedDocxRunFormattingMarkerState(documents) {
|
|
6898
6950
|
return {
|
|
@@ -6997,6 +7049,7 @@ function resolvedRunFormatting(propertySources, theme, runText, requestedFontSlo
|
|
|
6997
7049
|
const emphasisMark = resolveDocxEmphasisMark(propertySources);
|
|
6998
7050
|
const hiddenText = resolveDocxHiddenText(propertySources);
|
|
6999
7051
|
const legacyTextEffects = resolveDocxLegacyTextEffects(propertySources);
|
|
7052
|
+
const runBorder = resolveDocxRunBorder(propertySources, theme).border;
|
|
7000
7053
|
for (const properties of propertySources){
|
|
7001
7054
|
bold = overriddenBoolean(bold, onOffProperty(properties, 'b'));
|
|
7002
7055
|
complexBold = overriddenBoolean(complexBold, onOffProperty(properties, 'bCs'));
|
|
@@ -7154,6 +7207,9 @@ function resolvedRunFormatting(propertySources, theme, runText, requestedFontSlo
|
|
|
7154
7207
|
} : {},
|
|
7155
7208
|
...textCase ? {
|
|
7156
7209
|
textCase
|
|
7210
|
+
} : {},
|
|
7211
|
+
...runBorder ? {
|
|
7212
|
+
runBorder
|
|
7157
7213
|
} : {}
|
|
7158
7214
|
};
|
|
7159
7215
|
}
|
|
@@ -7190,6 +7246,8 @@ function formattingMarkup(document, formatting) {
|
|
|
7190
7246
|
if (void 0 !== formatting.emphasisMark) for (const [name, value] of Object.entries(documentEmphasisMarkDomAttributes(formatting.emphasisMark)))if ('style' === name) span.style.cssText += `; ${value}`;
|
|
7191
7247
|
else span.setAttribute(name, value);
|
|
7192
7248
|
if (void 0 !== formatting.hiddenText) for (const [name, value] of Object.entries(documentHiddenTextDomAttributes(formatting.hiddenText)))span.setAttribute(name, value);
|
|
7249
|
+
if (formatting.runBorder) for (const [name, value] of Object.entries(documentRunBorderDomAttributes(formatting.runBorder)))if ('style' === name) span.style.cssText += `; ${value}`;
|
|
7250
|
+
else span.setAttribute(name, value);
|
|
7193
7251
|
const legacyTextEffects = {
|
|
7194
7252
|
...void 0 !== formatting.legacyTextOutline ? {
|
|
7195
7253
|
outline: formatting.legacyTextOutline
|
|
@@ -7295,7 +7353,8 @@ function importedRunFormattingChange(runProperties, paragraphProperties, styles,
|
|
|
7295
7353
|
legacyTextOutline: beforeFormatting.legacyTextOutline,
|
|
7296
7354
|
legacyTextShadow: beforeFormatting.legacyTextShadow,
|
|
7297
7355
|
legacyTextEmboss: beforeFormatting.legacyTextEmboss,
|
|
7298
|
-
legacyTextImprint: beforeFormatting.legacyTextImprint
|
|
7356
|
+
legacyTextImprint: beforeFormatting.legacyTextImprint,
|
|
7357
|
+
runBorder: serializeDocumentRunBorder(beforeFormatting.runBorder)
|
|
7299
7358
|
})
|
|
7300
7359
|
};
|
|
7301
7360
|
}
|
|
@@ -7458,4 +7517,4 @@ function work_docx_run_formatting_import_formatNumber(value) {
|
|
|
7458
7517
|
function formatLineHeightFactor(value) {
|
|
7459
7518
|
return Number(value.toFixed(4)).toString();
|
|
7460
7519
|
}
|
|
7461
|
-
export { applyImportedDocxEquationMarkers, applyImportedDocxParagraphAlignmentMarkers, applyImportedDocxParagraphBorderMarkers, applyImportedDocxParagraphDirectionMarkers, applyImportedDocxParagraphFormattingChangeMarkers, applyImportedDocxParagraphIndentMarkers, applyImportedDocxParagraphPaginationMarkers, applyImportedDocxParagraphShadingMarkers, applyImportedDocxParagraphSpacingMarkers, applyImportedDocxParagraphTabStopMarkers, applyImportedDocxRunFormattingMarkers, createDocxParagraphStyleResolver, createDocxTableStyleResolver, createImportedDocxRunFormattingMarkerState, docxCaptionBookmark, docxCaptionReferenceTarget, docxCaptionSequenceKind, docxEquationHtml, docxFieldInstructions, docxFieldOccurrenceIsInlineEditable, docxFieldOccurrences, docxFieldResultText, docxRunPropertySources, docxTableCellStyleLayers, docxTablePropertySources, docxTableRunPropertySources, hasImportedDocxParagraphAlignmentMarkers, hasImportedDocxParagraphBorderMarkers, hasImportedDocxParagraphDirectionMarkers, hasImportedDocxParagraphFormattingChangeMarkers, hasImportedDocxParagraphIndentMarkers, hasImportedDocxParagraphPaginationMarkers, hasImportedDocxParagraphShadingMarkers, hasImportedDocxParagraphSpacingMarkers, hasImportedDocxParagraphTabStopMarkers, hasImportedDocxRunFormattingMarkers, hasInvalidDocxFieldStructure, importedDocxStrike, importedDocxUnderline, inspectDocxEquation, inspectDocxHiddenText, inspectDocxLegacyTextEffects, inspectDocxPageBorders, inspectDocxPageMarginSettings, inspectDocxPageMargins, inspectDocxPageSize, inspectDocxPaperSource, inspectDocxRunFonts, isDocxEquationLikeRoot, isSupportedDocxEquationPlacement, isSupportedDocxParagraphFormattingChange, isSupportedDocxRunFormattingChange, markDocxPackageEquations, markDocxParagraphAlignments, markDocxParagraphBorders, markDocxParagraphDirections, markDocxParagraphFormattingChanges, markDocxParagraphIndents, markDocxParagraphPagination, markDocxParagraphShading, markDocxParagraphSpacing, markDocxParagraphTabStops, markDocxRunFormattingIntoState, parseDirectDocxParagraphShading, parseDocxPageBorders, parseDocxPageGeometry, parseDocxPageMargins, parseDocxPaperSource, resolveDocxHiddenText, resolveDocxLegacyTextEffects, resolveDocxParagraphBordersForParagraph, resolveDocxTableStyleResolver };
|
|
7520
|
+
export { applyImportedDocxEquationMarkers, applyImportedDocxParagraphAlignmentMarkers, applyImportedDocxParagraphBorderMarkers, applyImportedDocxParagraphDirectionMarkers, applyImportedDocxParagraphFormattingChangeMarkers, applyImportedDocxParagraphIndentMarkers, applyImportedDocxParagraphPaginationMarkers, applyImportedDocxParagraphShadingMarkers, applyImportedDocxParagraphSpacingMarkers, applyImportedDocxParagraphTabStopMarkers, applyImportedDocxRunFormattingMarkers, createDocxParagraphStyleResolver, createDocxTableStyleResolver, createImportedDocxRunFormattingMarkerState, docxCaptionBookmark, docxCaptionReferenceTarget, docxCaptionSequenceKind, docxEquationHtml, docxFieldInstructions, docxFieldOccurrenceIsInlineEditable, docxFieldOccurrences, docxFieldResultText, docxRunPropertySources, docxTableCellStyleLayers, docxTablePropertySources, docxTableRunPropertySources, hasImportedDocxParagraphAlignmentMarkers, hasImportedDocxParagraphBorderMarkers, hasImportedDocxParagraphDirectionMarkers, hasImportedDocxParagraphFormattingChangeMarkers, hasImportedDocxParagraphIndentMarkers, hasImportedDocxParagraphPaginationMarkers, hasImportedDocxParagraphShadingMarkers, hasImportedDocxParagraphSpacingMarkers, hasImportedDocxParagraphTabStopMarkers, hasImportedDocxRunFormattingMarkers, hasInvalidDocxFieldStructure, importedDocxStrike, importedDocxUnderline, inspectDocxEquation, inspectDocxHiddenText, inspectDocxLegacyTextEffects, inspectDocxPageBorders, inspectDocxPageMarginSettings, inspectDocxPageMargins, inspectDocxPageSize, inspectDocxPaperSource, inspectDocxRunBorder, inspectDocxRunFonts, isDocxEquationLikeRoot, isSupportedDocxEquationPlacement, isSupportedDocxParagraphFormattingChange, isSupportedDocxRunFormattingChange, markDocxPackageEquations, markDocxParagraphAlignments, markDocxParagraphBorders, markDocxParagraphDirections, markDocxParagraphFormattingChanges, markDocxParagraphIndents, markDocxParagraphPagination, markDocxParagraphShading, markDocxParagraphSpacing, markDocxParagraphTabStops, markDocxRunFormattingIntoState, parseDirectDocxParagraphShading, parseDocxPageBorders, parseDocxPageGeometry, parseDocxPageMargins, parseDocxPaperSource, resolveDocxHiddenText, resolveDocxLegacyTextEffects, resolveDocxParagraphBordersForParagraph, resolveDocxRunBorder, resolveDocxTableStyleResolver };
|