feat: 完成 DOCX R4 元素级视觉门禁
建立 Chromium、Word 与 WPS 的可编辑内容、段落几何、页眉页脚、封面、媒体和逐页视觉比较链路。 支持封面独立分节、正文页码重启、主题页边距与横向纸张,并将自然分页差异降为诊断项。 修正代码块内边距和折叠表格单元格边框映射,14 套主题生产矩阵与六组布局视觉矩阵通过。
This commit is contained in:
@@ -26,6 +26,14 @@ const payload: PagedPreviewPayload = {
|
||||
keywords: [],
|
||||
language: "zh-CN"
|
||||
},
|
||||
semanticDocument: {
|
||||
schemaVersion: 1,
|
||||
titlePolicy: {
|
||||
metadataTitle: "suppress",
|
||||
firstBodyHeading: "keep"
|
||||
},
|
||||
regions: []
|
||||
},
|
||||
features: [],
|
||||
themeCss: "#write { color: #333; }",
|
||||
exportConfig: defaultExportConfig
|
||||
@@ -94,6 +102,9 @@ describe("分页预览协议", () => {
|
||||
);
|
||||
expect(css).toContain('content: "内网团队"');
|
||||
expect(css).toContain("border-bottom: 0.2mm solid currentColor");
|
||||
expect(css).toContain(
|
||||
"transform: translateY(calc(16mm - 8mm - 3mm))"
|
||||
);
|
||||
});
|
||||
|
||||
it("支持自定义页码模板和起始页码", () => {
|
||||
@@ -192,6 +203,40 @@ describe("分页预览协议", () => {
|
||||
);
|
||||
});
|
||||
|
||||
it("由语义文档强制封面结束后换页", () => {
|
||||
expect(documentGeometryCss).toContain(
|
||||
'#write [data-semantic-break-after="next-page"]'
|
||||
);
|
||||
expect(documentGeometryCss).toContain(
|
||||
"break-after: page !important"
|
||||
);
|
||||
expect(documentGeometryCss).toContain(
|
||||
"page-break-after: always !important"
|
||||
);
|
||||
expect(documentGeometryCss).toContain(
|
||||
'[data-semantic-region="cover"]'
|
||||
);
|
||||
expect(documentGeometryCss).toContain(
|
||||
"break-inside: avoid !important"
|
||||
);
|
||||
});
|
||||
|
||||
it("使用标准 Letter 横向尺寸生成分页规则", () => {
|
||||
const css = buildPagedMediaCss(
|
||||
{
|
||||
...defaultExportConfig,
|
||||
paper: {
|
||||
...defaultExportConfig.paper,
|
||||
format: "Letter",
|
||||
orientation: "landscape"
|
||||
}
|
||||
},
|
||||
payload
|
||||
);
|
||||
|
||||
expect(css).toContain("size: 279.4mm 215.9mm;");
|
||||
});
|
||||
|
||||
it("避免 Typora 围栏容器重复应用行内代码盒模型", () => {
|
||||
expect(documentBaseCss).toContain(
|
||||
"#write pre.md-fences > code"
|
||||
|
||||
Reference in New Issue
Block a user