For AI agents: the complete documentation index is available at https://a3s-lab.github.io/Office/docs/0.308.0/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/Office/docs/0.308.0/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/Office/docs/0.308.0/changelog.md.
更新日志
先了解 A3S Office 每个近期版本带来的产品收益,再按需进入实现细节。此精选视图与仓库中的
完整更新日志互为补充,并会跟随当前选择的文档版本。
v0.308.00.308.0 当时可用的历史 此冻结文档会有意隐藏后来才发布的版本。
拒绝过期的 PDF 表单整值覆盖 pdf-set-form-value 现在必须带 expectedValue。基线漂移时失败关闭且不写入,过期整值写入不能覆盖并发修改。
比较交换 expectedValue 必须等于当前字段值;字段不存在时传空字符串。 失败关闭 不匹配时返回 mutation_match_conflict,副本保持不变。 片段修改 只改一段时传入 find 命中的 search 与 indexUtf16。 更新日志→ 拒绝过期的 Markdown 整篇重写 markdown-replace 现在必须带 expectedMarkdown。基线漂移时失败关闭且不写入,过期重写不能覆盖并发修改。
比较交换 expectedMarkdown 必须等于刚从副本读到的规范源。 失败关闭 不匹配时返回 mutation_match_conflict,副本保持不变。 增量修改 增量修改优先使用 markdown-replace-text 或 markdown-splice,避免覆盖实时副本。 更新日志→ 在 MCP 上写明位置安全的定位锚点 CLI 帮助与 MCP find/mutate 描述写明 Document、Markdown、Presentation 的 find 身份字段,协作智能体无需阅读 Skill 即可回显。
文档与 Markdown Document 回显 paragraphId、textId、indexUtf16;Markdown 回显 indexUtf16。 演示文稿 将 containerKind、containerId、elementId、indexUtf16 回显到 presentation-replace-text。 宿主可见契约 MCP 宿主读不到 Skill 参考,因此相同锚点写在工具 schema 上。 更新日志→ 将 FreeText 编辑锚定到 find 命中跨度 pdf-update-annotation 接受 collab find 的可选 search 与 indexUtf16,只改这一段 FreeText;偏移漂移时失败关闭。
跨度编辑 传入命中的 indexUtf16 与匹配到的 search。nextAnnotation.contents 只替换这一段 FreeText,其余内容保留。 漂移时失败关闭 若该跨度已不匹配,变更返回 mutation_match_conflict 且不写入。 整段内容契约保留 省略 search 与 indexUtf16 时仍设置整段 FreeText 内容。仍然没有 PDF 正文 replace-text。 更新日志→ 将 PDF 表单编辑锚定到 find 命中跨度 pdf-set-form-value 接受 collab find 的可选 search 与 indexUtf16,只改这一段;偏移漂移时失败关闭。
跨度编辑 传入命中的 indexUtf16 与匹配到的 search。value 只替换这一段,字段其余内容保留。 漂移时失败关闭 若该跨度已不匹配,变更返回 mutation_match_conflict 且不写入。 整值契约保留 省略 search 与 indexUtf16 时仍设置整个字段值。仍然没有 PDF 正文 replace-text。 更新日志→ 将 Markdown 替换锚定到 find 命中偏移 markdown-replace-text 接受 collab find 的可选 indexUtf16,并发插入不能改写匹配次数相同但位置已变的另一段文本。
位置安全的跨度 将命中的 indexUtf16 与 occurrence 或 expectedMatches=1 一起传入。 漂移时失败关闭 偏移漂移返回 mutation_match_conflict 且不写入,即使匹配次数未变。 匹配次数契约保留 省略 indexUtf16 时仍保持原有匹配次数替换契约。 更新日志→ 编辑前定位 PDF 表单值与 FreeText collab find / office_collaboration_find 列出表单值与 FreeText 内容及稳定身份,智能体可直接变更,无需发明 PDF 正文 replace-text。
表单字段命中 命中按表单集合顺序返回 fieldId 与 indexUtf16,供 pdf-set-form-value 使用。 FreeText 批注命中 type 3 内容返回 annotationId、pageIndex 与 annotationType,供 pdf-update-annotation 使用。 没有正文 replace-text PDF 定位后编辑仍走既有类型化变更;正文替换保持在范围外。 更新日志→ 定位后编辑在协作中保持位置安全 文档与演示文稿 replace-text 的可选查找命中身份锚点会在选中跨度漂移时失败关闭,MCP schema 声明同一约定。
文档锚点来自查找命中 paragraphId、textId 与 indexUtf16 让 Writer 替换在并发对等方下保持位置安全。 演示文稿元素身份 containerKind、containerId、elementId 与 indexUtf16 守护选中的场景元素跨度。 MCP schema 承载约定 office_collaboration_mutate 声明身份锚定替换恢复约定,供无法读取 Skill 参考文件的宿主使用。 更新日志→ 函数参数个数引导智能体留在进程内 封闭注册表函数参数个数不匹配会失败关闭并提示对齐文档参数个数,MCP 重算 schema 声明同一约定。
参数个数不匹配保持关闭 错误的参数个数会提示对齐封闭注册表参数个数,并在进程内重算。 不发明参数方言 智能体重写为文档中的参数个数,而不是发明额外参数或外部求值器。 MCP schema 承载约定 recalculate-spreadsheet-formulas 声明参数个数恢复约定,供无法读取 Skill 参考文件的宿主使用。 更新日志→ 三维命名引用引导智能体留在进程内 三维命名引用会失败关闭并提示使用单工作表或工作簿作用域,MCP 重算 schema 声明同一约定。
Sheet1:Sheet2!Name 保持关闭 三维名称限定符会提示改写为单工作表或工作簿作用域名称,并在进程内重算。 不发明三维名称方言 智能体重写为受支持的作用域或工作簿内 A1 区域,而不是在原生引擎外求值。 MCP schema 承载约定 recalculate-spreadsheet-formulas 声明三维命名引用的恢复约定,供无法读取 Skill 参考文件的宿主使用。 更新日志→ 外部与结构化引用引导智能体留在进程内 外部工作簿与不受支持的 ListObject 结构化引用会失败关闭并给出恢复提示,MCP 重算 schema 声明同一约定。
外部工作簿读取保持关闭 类似 '[Book.xlsx]Sheet1'!A1 的公式会提示改写为工作簿内区域或值,并在进程内重算。 不受支持的结构化引用说明恢复路径 缺失表行或表外 [@Column] 形式会引导智能体使用受支持的 ListObject 形态或工作表 A1 区域。 MCP schema 承载约定 recalculate-spreadsheet-formulas 声明外部与结构化引用的恢复约定,供无法读取 Skill 参考文件的宿主使用。 更新日志→ 限定公式调用留在无限定符名称 带工作表或工作簿限定符的函数调用会失败关闭并提示使用无限定符名称,MCP 重算 schema 声明同一约定。
面向智能体的限定函数错误 类似 Sheet1!SUM(...) 的调用会提示使用无限定符的关闭注册表名称并在进程内重算,而不是改走 shell。 重算只接受无限定符名称 原生重算拒绝函数调用上的工作表或工作簿限定符,引导智能体重写为无限定符的 SUM、IF 等。 MCP schema 承载约定 recalculate-spreadsheet-formulas 声明函数调用必须是无限定符名称,供无法读取 Skill 参考文件的宿主使用。 更新日志→ 协作公式写入需要缓存值 协作表格写入 f 却缺少 v/m 时会失败关闭,MCP schema 引导智能体使用缓存值,而不是 recalculate-spreadsheet-formulas。
缺少缓存 v/m 时失败关闭 实时副本 nextCell 写入若包含 f,还必须提供缓存的 v 与 m,否则变更会被拒绝。 面向智能体的协作公式提示 错误会提示在 spreadsheet-set-cell 或 spreadsheet-batch-cells 上同时写入显式缓存的 v/m 与 f。 MCP schema 承载约定 spreadsheet-set-cell、spreadsheet-batch-cells 与 office_collaboration_mutate 声明协作副本不会重算公式。 更新日志→ 条件公式留在原生智能体路径 *IF 通配符失败会提示精确条件,Skill 区分原生验证与协作写入,MCP 命名区域在重算时解析。
面向智能体的 *IF 条件错误 SUMIF、COUNTIF 与 AVERAGEIF 的通配符或范围形状失败会提示使用精确值或数值比较,并留在进程内,而不是改走 shell。 原生验证与协作写入分开 Skill 指引区分原生 OOXML 重算与 formulaCached 检查,以及实时协作表格单元格写入。 命名区域在重算时解析 MCP 命名区域变更声明引用名称只在同一批处理中的 recalculate-spreadsheet-formulas 期间解析。 更新日志→ 未支持公式留在原生智能体路径 未注册函数会提示关闭注册表,MCP 导入声明推断公式只存储,Skill 验证点名 formulaCached,供 use worker 使用。
面向智能体的未支持函数错误 未知函数的重算失败会提示留在关闭注册表并在进程内重算,而不是改走 shell。 导入公式只存储 MCP import-spreadsheet-delimited 声明推断公式需要在同一批处理中执行 recalculate-spreadsheet-formulas。 面向 use worker 的 Skill 验证环 SKILL.md 点名 formula_not_evaluated 与 formulaCached,让无法读取 Skill 参考文件的宿主也能闭合写入 → 重算环。 更新日志→ 浏览器 TRUE() 与 FALSE() 失败关闭 浏览器里的 TRUE() 与 FALSE() 现在与关闭的原生注册表对齐。无括号的布尔字面量仍可解析。
没有浏览器独有函数 TRUE() 和 FALSE() 失败关闭,而不是只在浏览器内核返回布尔值。 字面量仍然可用 IF(TRUE,1,0) 仍然可用,因为无括号的 TRUE 是布尔字面量。 同一条智能体路径 原生 CLI 与 MCP 重算本来就会拒绝这些函数。浏览器内核现在与之对齐。 更新日志→ 浏览器 ROW 与 COLUMN 接受单个单元格 浏览器里的 ROW 与 COLUMN 对单个单元格与原生注册表对齐。区域仍然失败关闭,因为浏览器内核不溢出。
无参数仍是当前单元格 ROW() 和 COLUMN() 仍返回当前单元格的 1-based 行号或列号。 可选单个单元格 ROW(C4) 是 4,COLUMN($B$2) 是 2,绝对引用也一样。 区域失败关闭 ROW(A1:B2) 会被拒绝。智能体不应期望浏览器内核溢出数组。 更新日志→ 用 AVERAGEIF 对数字求平均 AVERAGEIF 对条件区域求平均,或对锚定在平均区域左上角、形状相同的区块求平均。没有数字匹配时是 #DIV/0!。通配符失败关闭。
左上角对齐 AVERAGEIF(A1:A3,"apple",C1) 读取 C1:C3,结果是 10,而不是只读 C1。 没有数字时是 #DIV/0! 文本和空白不计入。没有任何数字匹配时是除零,而不是不完整的平均值。 通配符失败关闭 未转义的 * 和 ? 在原生引擎和浏览器内核中都会被拒绝。 更新日志→ 用 COUNTIF 统计单元格 COUNTIF 统计一个矩形里的匹配单元格。比较规则和失败关闭的通配符与 SUMIF 相同。
同一套条件规则 比较、空白和大小写不敏感的文本与 SUMIF 一致。没有第二段区域需要对齐。 统计匹配个数 COUNTIF(A1:A3,"apple") 计入 apple 和 APPLE。COUNTIF(B1:B3,">2") 只计入大于 2 的数字。 通配符失败关闭 未转义的 * 和 ? 在原生引擎和浏览器内核中都会被拒绝。 更新日志→ 按条件区域形状计算 SUMIF SUMIF 从求和区域左上角按条件区域形状展开。通配符条件失败关闭。
左上角对齐 SUMIF(A1:A3,"apple",C1) 读取 C1:C3,而不是只读 C1。 通配符失败关闭 未转义的 * 和 ? 会被拒绝,而不是返回错误的和。 两个计算引擎一致 原生重算和浏览器内核使用同一窗口。省略求和区域时,对条件区域本身求和。 更新日志→ 绑定实时文档编辑器且不裁剪菜单 宿主拿到已挂载的编辑器并保留扩展;功能区菜单逃出裁剪宿主时仍留在办公主题里。
实时编辑器钩子 onEditorReady 收到已挂载的 TipTap 编辑器。defaultCommentsOpen 打开评论栏。 菜单仍使用办公主题 功能区菜单逃到仍保留主题的浮层根。对话框留在办公根节点内。 Presence 可以不绑会话 宿主可以不绑 CRDT 会话就投影 presence。kind 或 artifact 对不上仍然失败关闭。 更新日志→ 定位表格单元格与演示文稿文本后再编辑 collab find 给出表格单元格供 spreadsheet-set-cell,并为 presentation-replace-text 编号演示文稿匹配。
每个表格单元格一条命中 命中返回 sheetId、row、column。没有表格文本替换变更。 只替换一处演示文稿文本 把 matchCount 作为 expectedMatches,可选 occurrence。presentation-replace-text 只写场景元素的 text 字段。 几何仍是另一次编辑 几何和其他字段仍由 presentation-update-element 修改。 更新日志→ 定位后再替换实时 Markdown 文本 collab find 与 office_collaboration_find 支持 Markdown 副本,遍历与 markdown-replace-text 一致。
与 Document 同一约定 把 matchCount 作为 expectedMatches,可选 occurrence 只改那一处。 UTF-16 源码偏移 命中报告规范 Markdown Y.Text 源上的 indexUtf16。 已知范围仍用 splice 明确的 UTF-16 范围仍用 markdown-splice;整源重写仍用 markdown-replace。 更新日志→ 定位后再替换实时 Writer 文本 collab find 与 office_collaboration_find 给出与 document-replace-text 同一遍历的 1-based 命中。
与替换同一遍历 把 matchCount 作为 expectedMatches,可选 occurrence 只改那一处。 稳定段落提示 命中在可用时包含 paragraphId、textId 与 indexUtf16。 无需扫完整投影 代理不必先解码整份协作投影就能定位文本。 更新日志→ 定位后再替换一处文本 文件编辑器和实时 Writer 可以只改一处编号命中。R0 语料库同时补齐复杂首页和偶数页页脚 NUMPAGES。
同一遍历,一处命中 find 与 office_find 给命中编号。--occurrence 和 replace-text.occurrence 只改那一处。 写入前失败 序号不存在,或共享字符串被多个选中单元格共用时,不会写入。 页脚 NUMPAGES 矩阵 复杂 fldChar 首页和偶数页页脚 NUMPAGES 进入永久无静默覆盖门禁。 更新日志→ R0 语料库覆盖复杂首页页眉 PAGE 字段 永久无静默覆盖门禁新增复杂(fldChar)首页页眉 PAGE 实时字段夹具,覆盖 Word 编写的标题页页眉。
复杂首页 PAGE 身份 以 fldChar 编写的标题页页眉 PAGE 字段在导入 → 导出 → 再打开后仍保持实时身份。 后续页眉保留 默认页眉文本与复杂首页 PAGE 变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖偶数页页脚 NUMPAGES 字段 永久无静默覆盖门禁新增偶数页页脚 NUMPAGES 实时字段夹具,覆盖传统 Office 对开页总页数页脚。
偶数页 NUMPAGES 身份 对开页页脚 NUMPAGES 字段在导入 → 导出 → 再打开后仍保持实时身份。 奇数页页脚保留 奇数/默认页脚文本与偶数页 NUMPAGES 变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖首页页脚 NUMPAGES 字段 永久无静默覆盖门禁新增首页页脚 NUMPAGES 实时字段夹具,覆盖传统 Office 标题页总页数页脚。
首页 NUMPAGES 身份 标题页页脚 NUMPAGES 字段在导入 → 导出 → 再打开后仍保持实时身份。 后续页脚保留 默认页脚文本与首页 NUMPAGES 变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖偶数页页眉 PAGE 字段 永久无静默覆盖门禁新增偶数页页眉 PAGE 实时字段夹具,覆盖传统 Office 对开页页码。
偶数页 PAGE 身份 对开页页眉 PAGE 字段在导入 → 导出 → 再打开后仍保持实时身份。 奇数页页眉保留 奇数/默认页眉文本与偶数页 PAGE 变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖首页页眉 PAGE 字段 永久无静默覆盖门禁新增首页页眉 PAGE 实时字段夹具,覆盖传统 Office 标题页页码;表格单元格内编辑器与画布字形一致。
首页 PAGE 身份 标题页页眉 PAGE 字段在导入 → 导出 → 再打开后仍保持实时身份。 单元格内字体对齐 表格单元格内编辑器字体栈在编辑时与 Fortune 画布字形一致。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖偶数页页眉页脚文本 永久无静默覆盖门禁新增独立偶数页与默认页眉/页脚文本夹具,覆盖传统 Office 对开页页眉页脚。
偶数页页眉页脚身份 偶数页页眉与页脚文本在导入 → 导出 → 再打开后仍与默认页眉页脚区分。 默认页眉页脚保留 奇数/默认页眉与页脚文本与偶数页变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖首页页眉页脚文本 永久无静默覆盖门禁新增独立首页与默认页眉/页脚文本夹具,覆盖传统 Office 标题页页眉页脚。
首页页眉页脚身份 标题页页眉与页脚文本在导入 → 导出 → 再打开后仍与默认页眉页脚区分。 默认页眉页脚保留 后续页眉与页脚文本与首页变体一起往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖复杂页眉 SECTION 字段 永久无静默覆盖门禁新增复杂 fldChar 页眉 SECTION 与页脚 SECTIONPAGES 夹具,覆盖 Word 多节报告页眉页脚写法。
复杂 SECTION 页眉 复杂页眉 SECTION 在导入 → 导出 → 再打开后仍保留种类与指令。 复杂 SECTIONPAGES 页脚 复杂页脚 SECTIONPAGES 以相同页眉页脚字段跨度往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖页眉 SECTION 与 SECTIONPAGES 永久无静默覆盖门禁新增页眉 SECTION 与页脚 SECTIONPAGES 实时字段夹具,覆盖多节报告页眉页脚。
页眉 SECTION 身份 页眉 SECTION 在导入 → 导出 → 再打开后仍保留种类与指令。 页脚 SECTIONPAGES 身份 页脚 SECTIONPAGES 实时字段以相同页眉页脚字段跨度往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖复杂页眉 DATE 与 TIME 永久无静默覆盖门禁新增复杂 fldChar 页眉 DATE(格式开关)与页脚 TIME 夹具,覆盖 Word 报告页眉页脚写法。
复杂 DATE 页眉 复杂页眉 DATE 在导入 → 导出 → 再打开后仍保留种类与 \@ 指令。 复杂 TIME 页脚 复杂页脚 TIME 以相同页眉页脚字段跨度往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖页眉 DATE 与页脚 TIME 永久无静默覆盖门禁新增页眉 DATE(格式开关)与页脚 TIME 实时字段夹具,覆盖报告打印/日期页眉页脚。
页眉 DATE 身份 带格式的页眉 DATE 在导入 → 导出 → 再打开后仍保留种类与 \@ 指令。 页脚 TIME 身份 页脚 TIME 实时字段以相同页眉页脚字段跨度往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖复杂页眉/页脚 PAGE 字段 页眉页脚保留复杂 fldChar PAGE 与 NUMPAGES 字段,永久无静默覆盖门禁新增复杂页眉/页脚夹具。
复杂页眉页脚字段 页眉页脚中受支持的 fldChar PAGE/NUMPAGES 导入为可编辑字段跨度。 往返身份 复杂页眉 PAGE 与页脚 NUMPAGES 在导入 → 导出 → 再打开后仍保留种类与指令。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖页眉/页脚 PAGE 字段 页眉页脚保留实时 PAGE 与 NUMPAGES 字段,永久无静默覆盖门禁新增页眉/页脚夹具。
实时页眉页脚字段 页眉页脚中受支持的 fldSimple PAGE/NUMPAGES 导入为可编辑字段跨度。 往返身份 页眉 PAGE 与页脚 NUMPAGES 在导入 → 导出 → 再打开后仍保留种类与指令。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖富文本内容控件 永久无静默覆盖门禁新增富文本 SDT 别名/标签/类型/文本身份的代表性夹具。
富文本 SDT 身份 富文本内容控件在导入 → 导出 → 再打开后仍保留别名、标签、类型与文本。 与纯文本 SDT 成对 补齐 main 上已门禁的纯文本内容控件夹具。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖表 SEQ 题注 永久无静默覆盖门禁新增表 SEQ 题注种类/id 身份的代表性夹具。
表题注身份 表 SEQ 题注在导入 → 导出 → 再打开后仍保留种类与稳定 caption id。 与图题注成对 补齐 main 上已门禁的图 SEQ 与 caption REF 夹具。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖图注与 caption REF 永久无静默覆盖门禁新增图 SEQ 题注种类/id 与 caption REF 目标身份的代表性夹具。
图题注身份 图 SEQ 题注在导入 → 导出 → 再打开后仍保留种类与稳定 caption id。 Caption REF 目标 Caption REF 字段与被引用题注保持同一目标身份。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 TIME 与 DATE 格式字段 永久无静默覆盖门禁新增正文 TIME 与 DATE \@ 格式开关字段种类/指令身份的代表性夹具。
TIME 身份 正文 TIME 字段在导入 → 导出 → 再打开后仍保留种类与指令。 DATE 格式开关 带有有界 \@ 格式开关的 DATE 指令保持相同契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 NUMCHARS 与 DATE 字段 永久无静默覆盖门禁新增正文 NUMCHARS 与裸 DATE 字段种类/指令身份的代表性夹具。
NUMCHARS 身份 正文 NUMCHARS 字段在导入 → 导出 → 再打开后仍保留种类与指令。 DATE 身份 裸 DATE 字段保持相同的种类/指令契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 SECTIONPAGES 与 NUMWORDS 字段 永久无静默覆盖门禁新增正文 SECTIONPAGES 与 NUMWORDS 字段种类/指令身份的代表性夹具。
SECTIONPAGES 身份 正文 SECTIONPAGES 字段在导入 → 导出 → 再打开后仍保留种类与指令。 NUMWORDS 身份 正文 NUMWORDS 字段保持相同的种类/指令契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 NUMPAGES 与 SECTION 字段 永久无静默覆盖门禁新增正文 NUMPAGES 与 SECTION 字段种类/指令身份的代表性夹具。
NUMPAGES 身份 正文 NUMPAGES 字段在导入 → 导出 → 再打开后仍保留种类与指令。 SECTION 身份 正文 SECTION 字段保持相同的种类/指令契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 TOC 字段选项与条目 永久无静默覆盖门禁新增 TOC 最小/最大级别、超链接选项与缓存条目标题身份的代表性夹具。
TOC 级别选项 SDT 包装的 TOC 字段在导入 → 导出 → 再打开后仍保留最小/最大大纲级别。 缓存条目标题 缓存的 TOC 条目标题与超链接选项通过相同往返。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 XE 索引项与 INDEX 字段 永久无静默覆盖门禁新增 XE 主项/子项身份与 INDEX 字段列数身份的代表性夹具。
XE 索引项身份 原生 XE 标记在导入 → 导出 → 再打开后仍保留主项与子项文本。 INDEX 列数身份 SDT 包装的 INDEX 字段在相同往返中保留列数选项。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖 PAGE 与书签支持的 PAGEREF 字段 永久无静默覆盖门禁新增正文 PAGE 字段种类/指令身份与书签支持的 PAGEREF 种类/指令/目标身份的代表性夹具。
PAGE 字段身份 正文 PAGE 字段在导入 → 导出 → 再打开后仍保留种类与指令。 PAGEREF 目标身份 书签支持的 PAGEREF 字段在相同往返中保留指令与目标名称。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖尾注与文本内容控件 永久无静默覆盖门禁新增尾注引用/正文身份与内联文本内容控件别名/标签/文本的代表性夹具。
尾注身份 尾注引用在导入 → 导出 → 再打开后仍保留注释放正文。 文本内容控件 内联文本控件的别名、标签与可见文本通过相同的往返契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖页眉、页脚与脚注 永久无静默覆盖门禁新增默认页眉/页脚文本与脚注引用/正文身份的代表性夹具。
页眉页脚 默认节页眉与页脚文本在导入 → 导出 → 再打开后仍然保留。 脚注身份 脚注引用在相同往返中保留注释放正文。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 语料库覆盖内部链接与审阅批注 永久无静默覆盖门禁新增书签锚点超链接与审阅批注作者/文本身份的代表性夹具。
内部导航链接 指向书签的超链接在导入 → 导出 → 再打开后仍保留锚点身份。 审阅批注身份 批注作者与文本与修订一样通过相同的往返契约。 同一门禁命令 运行 bun run test:corpus:r0。不扩展装饰性 PDF 边框覆盖面。 更新日志→ R0 无静默覆盖语料库成为永久门禁 代表性 DOCX 夹具必须往返而不静默丢失身份。故意规范化会被诊断,活动内容在导出时保持 fail-closed。
身份往返 书签/链接、审阅修订作者与文本,以及合同表格单元格在导入 → 导出 → 再打开后仍然保留。 可诊断的规范化 重复书签名会发出 docx.bookmarks.identity,而不是静默覆盖范围。 活动内容 fail-closed 导出时剥离 VBA 与包签名,安全的供应商部件仍可保留。运行 bun run test:corpus:r0。 更新日志→ 表格行号保持可读 行/列标题叠加层保持半透明,Fortune 画布绘制的行列号仍可见;单元格内编辑器默认垂直居中,与 Fortune vt 0 一致。
半透明标题叠加层 悬停与选中填充使用强调色与透明色的 color-mix,而不再用深色主题下会发黑的不透明面板填充。 单元格内编辑垂直居中 输入框内层默认 flex 并垂直居中;data-cell-vt 为 1/2 时切换到顶端/底端对齐。 功能区垂直居中匹配默认 缺失 vt 时按垂直居中处理,未设置格式的单元格上“垂直居中”保持按下态。 更新日志→ Markdown 源码在 textarea 内滚动 长 Markdown 源码在 textarea 内滚动,而不再撑破窗格外壳,左右分栏比例同步再次生效。窄屏布局保持同一滚动归属约定。
窗格外壳不再抢走滚动 源码窗格使用 overflow: hidden;textarea 使用 min-height: 0 与 overflow: auto,让 flex 布局把滚动留在挂有 onScroll 的控件上。 长文档下分栏同步恢复 比例进度映射重新监听 textarea,预览滚动会跟随长文档的源码滚动。 窄屏布局保持滚动归属 手机与容器窄屏规则继续对源码 textarea 使用 min-height: 0,而不再强制 min-height: 100%。 更新日志→ 数据验证 Escape 还原未提交草稿 数据验证在表单有改动时,第一次 Escape 还原草稿;仅在干净状态下第二次 Escape 才关闭。取消与窗口关闭仍立即丢弃,与排序选项的 L2 脏还原模式一致。
第一次 Escape 还原,第二次关闭 未提交的忽略空值、类型、公式与警告草稿字段会还原且不关闭对话框。 复用 Dialog onEscape 数据验证接入排序选项与创建表格共用的 Dialog onEscape 钩子。 取消仍立即丢弃 取消与窗口关闭仍保持一次丢弃语义;只有 Escape 走两步脏还原。 更新日志→ 排序选项 Escape 还原未提交草稿 排序选项在表单有改动时,第一次 Escape 还原草稿;仅在干净状态下第二次 Escape 才关闭。取消与窗口关闭仍立即丢弃,与创建表格的 L2 脏还原模式一致。
第一次 Escape 还原,第二次关闭 未提交的大小写、文本方法与方向草稿字段会还原且不关闭对话框。 复用 Dialog onEscape 排序选项接入创建表格与文档校对语言设置共用的 Dialog onEscape 钩子。 取消仍立即丢弃 取消与窗口关闭仍保持一次丢弃语义;只有 Escape 走两步脏还原。 更新日志→ 创建表格 Escape 还原未提交草稿 创建表格在表单有改动时,第一次 Escape 还原草稿;仅在干净状态下第二次 Escape 才关闭。取消与窗口关闭仍立即丢弃,与文档校对语言对话框的 L2 脏还原模式一致。
第一次 Escape 还原,第二次关闭 未提交的区域、标题行与汇总行草稿字段会还原且不关闭对话框。 复用 Dialog onEscape 创建表格接入字体与校对语言设置共用的 Dialog onEscape 钩子。 取消仍立即丢弃 取消与窗口关闭仍保持一次丢弃语义;只有 Escape 走两步脏还原。 更新日志→ 校对语言对话框 Escape 还原未提交草稿 校对语言设置在表单有改动时,第一次 Escape 还原草稿;仅在干净状态下第二次 Escape 才关闭。取消与窗口关闭仍立即丢弃,与字体对话框的 L2 脏还原模式一致。
第一次 Escape 还原,第二次关闭 未提交的语言与校对行为草稿字段会还原且不关闭对话框,避免误按 Escape 丢掉 L2 校对编辑。 复用 Dialog onEscape 校对语言对话框接入字体高级设置为共享 Dialog 引入的 onEscape 钩子。 取消仍立即丢弃 取消与窗口关闭仍保持一次丢弃语义;只有 Escape 走两步脏还原。 更新日志→ 插入与页面布局分页符保持焦点 文档插入与页面布局中的分页符控件不再通过 TipTap chain().focus() 抢焦点,点击后光标留在正文。Ctrl+Enter 仍按需聚焦,因为该快捷键是键盘路径而非常驻功能区点击。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后光标留在分页符插入处。 插入与页面布局保持挂载 插入功能区与页面布局功能区的分页符按钮均使用 editor.commands.insertContent,并在 mousedown 时 preventDefault。 Ctrl+Enter 仍聚焦 键盘分页符快捷键仍使用 chain().focus(),以便快捷键后编辑器获得光标。 更新日志→ 字体对话框 Escape 还原未提交草稿 字体高级设置在表单有改动时,第一次 Escape 还原草稿;仅在干净状态下第二次 Escape 才关闭。取消与窗口关闭仍立即丢弃。共享 Dialog 现支持可选 onEscape,使模态草稿与常驻弹出层的 L2 脏还原模式一致。
第一次 Escape 还原,第二次关闭 未提交的字符缩放等草稿字段会还原且不关闭对话框,避免误按 Escape 丢掉 L2 字体编辑。 Dialog onEscape 钩子 模态 Dialog 的 Escape / cancel 可还原草稿,且不影响取消与窗口关闭控件。 取消仍立即丢弃 取消与窗口关闭仍保持一次丢弃语义;只有 Escape 走两步脏还原。 更新日志→ 文档快速访问撤销/重做与取消链接保留焦点 文档快速访问撤销/重做、插入区取消链接与删除书签不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走快速访问或功能区触发按钮上的 L2 文档编辑循环。添加链接与添加书签提示框因界面会离开而在应用后仍还原编辑器焦点。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在快速访问或插入功能区触发按钮。 保持挂载的文档控件 快速访问撤销/重做、取消链接与删除书签会使工具栏保持挂载,因此 L2 循环留在同一触发按钮。 提示框仍还原编辑器 添加链接与添加书签提示框在应用后仍聚焦编辑器,因为这些界面会关闭。 更新日志→ Markdown 功能区常驻格式控件保留焦点 Markdown 功能区常驻格式控件(撤销/重做、段落样式、加粗/斜体/删除线/行内代码、列表、引用、代码块、分隔线、插入表格与移除链接)不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走功能区触发按钮上的 L2 Markdown 编辑循环。链接与图片对话框因界面会离开而在应用后仍还原编辑器焦点。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在 Markdown 功能区触发按钮。 保持挂载的 Markdown 控件 撤销/重做、样式、标记、列表、块级插入与移除链接会使功能区保持挂载,因此 L2 循环留在同一触发按钮。 对话框仍还原编辑器 链接与图片插入对话框在应用后仍聚焦编辑器,因为这些界面会关闭。 更新日志→ 页眉页脚撤销/重做与移除链接保留功能区焦点 文档页眉页脚功能区撤销/重做与移除链接,以及内联页眉页脚工具栏撤销/重做与移除链接,不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走触发按钮上的 L2 页眉页脚编辑循环。通过提示对话框添加链接后仍会还原页眉页脚编辑器焦点。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在页眉页脚撤销/重做或移除链接触发按钮。 保持挂载的页眉页脚控件 撤销、重做与移除链接会使页眉页脚功能区保持挂载,因此 L2 循环留在同一触发按钮。添加链接在提示后仍聚焦页眉页脚编辑器。 L2 页眉页脚循环留在控件上 撤销页眉页脚编辑或移除链接后,键盘用户可从同一功能区或页眉页脚按钮继续操作。 更新日志→ 表格布局结构控件保留功能区焦点 文档表格布局的插入/删除行与列、合并/拆分、单元格对齐、平均分布、尺寸字段、标题行切换与样式库不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走功能区触发按钮上的 L2 表格编辑循环。删除表格仍会还原编辑器焦点,因为上下文功能区会随表格一起消失。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在表格布局功能区触发按钮。 表格结构编辑 插入/删除行与列、合并/拆分、对齐、平均分布与尺寸字段与主页格式化共享同一焦点契约。删除表格会有意还原编辑器焦点。 L2 表格编辑循环留在控件上 插入行或合并单元格后,键盘用户可从同一功能区按钮继续操作。 更新日志→ 对齐与页眉页脚格式保留功能区焦点 文档主页段落对齐,以及页眉页脚加粗/斜体、上/下标与对齐,不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走功能区或页眉页脚触发按钮上的 L2 格式循环。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在主页对齐或页眉页脚触发按钮。 主页对齐与页眉页脚 与加粗/斜体、下划线/删除线拆分和字体下拉框相同的焦点契约。 L2 格式循环留在控件上 对齐或切换页眉页脚加粗/斜体后,键盘用户可从同一控件继续操作。 更新日志→ 加粗、斜体与字号步进保留功能区焦点 文档主页加粗/斜体、增大/减小字号,以及选择工具栏加粗/斜体,不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走功能区或浮动工具栏触发按钮上的 L2 格式循环。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在功能区或选择工具栏触发按钮。 主页与选择工具栏 与下划线/删除线拆分、列表主按钮和字体下拉框相同的焦点契约。 L2 格式循环留在控件上 切换加粗/斜体或步进字号后,键盘用户可从同一控件继续操作。 更新日志→ 拆分主按钮与表格布局保留功能区焦点 文档下划线/删除线与列表拆分主按钮,以及表格自动调整,不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走功能区控件上的 L2 格式循环。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在功能区主按钮或布局下拉框。 主页拆分控件与表格布局 与颜色选择器、突出显示切换和字体下拉框相同的焦点契约。 L2 格式循环留在控件上 切换下划线、列表或表格自动调整后,键盘用户可从同一功能区控件继续操作。 更新日志→ 字体与边框下拉框保留功能区焦点 文档字体/字号、段落样式与表格应用边框下拉框在选中时不再调用 TipTap chain().focus(),Popover 可将焦点还原到功能区下拉框。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后 Popover 对下拉框触发按钮的焦点还原得以保留。 主页、样式库与表格设计 与颜色选择器和突出显示切换相同的焦点契约。 L2 格式循环留下拉框 选择字体、样式或边框目标后,键盘用户无需重新聚焦功能区即可再次打开同一下拉框。 更新日志→ 突出显示切换保留功能区触发焦点 文档主页与选择工具栏的突出显示切换不再调用 TipTap chain().focus(),延迟的编辑器焦点不会抢走触发按钮上的 L2 格式循环。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后焦点留在功能区或工具栏按钮。 主页与选择工具栏 与颜色选择器和下划线/删除线样式菜单相同的焦点契约。 L2 格式循环留在触发按钮 切换突出显示后,键盘用户可从同一功能区控件继续操作。 更新日志→ 颜色选择器选色后还原 L2 焦点 文档字体、单元格底纹、选择工具栏与页眉页脚颜色选择器在选色时不再调用 TipTap chain().focus(),Popover 可将焦点还原到功能区触发按钮。
不再被延迟的编辑器焦点抢走 TipTap chain().focus() 会在后续动画帧调度 DOM 焦点;省略后 Popover 对触发按钮的焦点还原得以保留。 主页、表格、选择工具栏、页眉页脚 与下划线/删除线样式菜单及列表库相同的 L2 契约。 L2 颜色循环留在触发按钮 选色后,键盘用户可从同一功能区控件再次打开调色板。 更新日志→ 间距与边距面板 Escape 取消草稿 文档段落间距与表格单元格边距在各自面板 fieldset 内任意焦点按 Escape 时还原脏草稿,并设置 data-office-escape-consumer。
面板级脏 Escape 在同一面板内其他控件上按 Escape 时,脏的间距或边距草稿会还原。 干净 Escape 仍关闭 再次 Escape(或草稿未改动时 Escape)仍关闭弹层并还原触发按钮。 对齐编号 Escape 契约 与编号起始及 OfficeColorPicker 相同的脏-only 面板 fieldset 模式。 更新日志→ 编号起始面板 Escape 取消草稿 文档编号库在设置 fieldset 内任意焦点(含应用起始值)按 Escape 时还原脏起始编号草稿,并设置 data-office-escape-consumer。
面板级脏 Escape 编辑起始编号后 Tab 到「应用起始值」再 Escape,还原已提交起始值且不关闭。 干净 Escape 仍关闭 再次 Escape(或草稿未改动时 Escape)仍关闭编号库并还原触发按钮。 对齐颜色选择器 Escape 契约 与 OfficeColorPicker 相同的脏-only 面板 fieldset 模式,L2 Escape 行为可预期。 更新日志→ 颜色选择器面板 Escape 取消草稿 OfficeColorPicker 在调色板内任意焦点(含应用)按 Escape 时还原脏自定义颜色草稿,并在面板 fieldset 上设置 data-office-escape-consumer。
面板级脏 Escape 编辑自定义色值后 Tab 到「应用」再 Escape,还原已提交颜色且不关闭。 干净 Escape 仍关闭 再次 Escape(或草稿未改动时 Escape)仍关闭选择器并还原触发按钮。 共享功能区原语 一次修复覆盖文档、表格、演示与 PDF 中使用 OfficeColorPicker 的颜色披露。 更新日志→ 更多框线 Escape 取消草稿 表格「更多框线」在脏线型/颜色草稿时 Escape 还原会话基线,位置 radiogroup 的 Tab 落点跟随已选目标,Popover 打开焦点优先可 Tab 控件。
脏 Escape 还原会话 修改线型或颜色后按 Escape 回到打开时的值,不关闭对话框。 已选目标保持 Tab 落点 位置 radiogroup 把 tabindex=0 放在 aria-checked 的 radio 上,再次打开时聚焦当前框线目标。 打开焦点尊重 tabindex Popover focusFirstOnOpen 优先可 Tab 控件,再回退到全部 tabindex=-1 的菜单项。 更新日志→ 紧凑插入表格 Escape 取消草稿 紧凑插入表格的行数 / 列数在脏草稿时 Escape 还原聚焦基线,并通过 data-office-escape-consumer 让第一次 Escape 取消而不关闭选择器。
脏 Escape 还原基线 修改行数或列数后按 Escape 回到聚焦时的值,不关闭对话框。 干净 Escape 仍关闭 再次 Escape(或未改动字段时 Escape)仍关闭选择器并还原触发按钮。 步进保持字段焦点 加减按钮 mousedown preventDefault,保持键盘焦点在数字框以便再次 Escape。 更新日志→ 框线位置网格支持左右焦点 表格「更多框线」位置 radiogroup 是两列 CSS 网格;左右方向键通过 moveOfficeGridMenuFocus(..., 2) 在相邻目标间移动。
两列网格焦点 框线目标使用 columns=2 的 moveOfficeGridMenuFocus,左右键与可视布局一致。 相邻目标成对 从「内部竖框线」向左到达「内部横框线」;从「下框线」向下到达「右框线」。 行间移动不变 Home / End / 上下键仍遍历 radiogroup;原先线性菜单焦点只破坏了水平移动。 更新日志→ 下划线与删除线保持功能区焦点 文档「更多下划线」/「更多删除线」样式选择与下划线颜色不再把焦点抢进编辑器;Popover 还原功能区展开按钮,便于键盘二级循环。
二级选择后不再 chain().focus() 下划线与删除线样式菜单直接调用 setDocumentUnderline / setDocumentStrike,再关闭面板,让 Popover 焦点还原生效。 下划线颜色同样处理 下划线颜色色块与「自动颜色」使用 setDocumentUnderlineColor,不再聚焦编辑器。 二级披露回路 键盘用户无需先从画布 Tab 出来即可再次打开下划线 / 删除线菜单。 更新日志→ 对话框选项网格改用 radiogroup 文档列表库与表格「更多框线」仍用 dialog 承载混合控件,但内部样式选择改为 radiogroup/radio,不再嵌套 menu/menuitemradio。
合法对话框子树 menu 只能包含 menuitem* / group / separator。含数字框与下拉的混合面板保持 dialog,并用 radiogroup。 列表库单选 项目符号与编号样式网格在 radiogroup 下用 role=radio;清除与起始编号操作仍是普通按钮。 框线位置单选 表格框线位置选项改为 radio;线型与颜色仍是 OfficeSelect / OfficeColorPicker 三级控件。 更新日志→ GitHub 发布↗ npm 包↗ 对象对齐名称、列表库焦点与起始编号草稿 演示文稿「对象对齐」无障碍名称与可见文案一致。文档列表库选择后焦点还回功能区。编号「起始编号」与其他 OfficeNumberField 一致:Escape 取消,blur/Enter 提交。
对齐名称一致 可见「对象对齐」即按钮名称;「元素对齐到幻灯片 / 对齐所选对象」保留在 title 与 aria-description。 列表库焦点 选择项目符号或编号样式后,Popover 把焦点还回功能区触发器,而不是编辑器。 起始编号草稿 Escape 还原已提交起始值;blur / Enter 即可提交;应用起始值在已提交时仍可确认并关闭编号库。 更新日志→ GitHub 发布↗ npm 包↗ 表格二级菜单:role=group 与工作表标签色左右键 工作表选项、单元格样式与表格样式库在 role=menu 下用 role=group 替代 fieldset。标签颜色支持左右键移动焦点;分隔线保持原生 hr。
合法菜单分组 fieldset 不是 role=menu 的合法子节点;group 继续给 menuitemradio 组加标签。 标签色键盘 左右键在工作表标签色色块间移动,不离开该行。 原生菜单分隔线 工作表选项菜单保持原生 hr 分隔线(不再冗余设置 role=separator)。 更新日志→ GitHub Release↗ 功能区二级/三级 ARIA 卫生:去掉 pressed+expanded,PDF 菜单分组 表格/文档弹出菜单触发器去掉与 aria-expanded 冲突的 aria-pressed。汇总行打开时焦点落到启用复选框。PDF「更多工具」用 role=group 划分 menuitemradio。
汇总行焦点 focusFirstOnOpen 把键盘焦点移入对话框。 去掉 pressed+expanded 菜单/对话框披露控件(汇总行、插入表格、冻结、方向、大小写、边距、间距、分页、查找)不再同时设置 aria-pressed 与 aria-expanded。 PDF 溢出菜单分组 「更多工具」用合法的 role=group 子节点划分 menuitemradio 组。 更新日志→ GitHub Release↗ Popover 外侧关闭时还原工具栏触发器焦点 共享:外侧指针关闭与打开期间禁用都会把焦点还原到二级/三级工具栏触发器;Tab 离开仍保持目标焦点。
外侧指针 外侧 pointerdown 走与 Escape 相同的 close() 路径。 不可聚焦区域 relatedTarget 为空的 focusout 会还原触发器。 保留 Tab 离开 Tab 到其他控件时不会把焦点抢回触发器。 更新日志→ GitHub Release↗ PDF 页码与工作表重命名 Escape 消费者对齐嵌套表面 PDF:脏页码草稿还原并消费 Escape;干净字段冒泡。表格:内联工作表重命名在打开期间标记 Escape 消费者。
PDF 页码 脏的「页码」草稿还原当前页,并设置 data-office-escape-consumer。 干净页码冒泡 干净页码字段不再一律拦截 Escape。 工作表重命名 重命名输入在打开期间设置 data-office-escape-consumer。 更新日志→ GitHub Release↗ Escape 还原脏的表格名称草稿且不泄漏关闭 表格:在脏的「表格名称」上按 Escape 时,先还原已提交名称并标记 Escape 消费者,避免关闭嵌套/任务窗格表面。
表格名称 脏的名称草稿在 Escape 时还原,并设置 data-office-escape-consumer。 不关闭父表面 第一次 Escape 取消草稿,不关闭父级/任务窗格表面。 干净字段冒泡 干净的表格名称字段仍让 Escape 冒泡以关闭父表面。 更新日志→ GitHub Release↗ Escape 在关闭汇总行弹出层前还原脏草稿 表格:在脏的「汇总标签」与「汇总公式」上按 Escape 时,先还原已提交值,再关闭汇总行弹出层。
汇总标签 脏的标签草稿在 Escape 时还原,而不再因失焦提交。 自定义公式 脏的自定义公式在汇总行弹出层关闭前还原。 共享提交文本框 汇总行字段复用 CommittedOfficeTextField 的 Escape 消费约定。 更新日志→ GitHub Release↗ Escape 在关闭二级表面前还原脏草稿 共享/文档:在脏的单元格边距、起始编号与颜色选择器自定义色值上按 Escape 时,先还原已提交值,再关闭二级表面。
单元格边距 脏的厘米草稿在 Escape 时还原,而不再因失焦提交。 起始编号 脏的起始编号在编号库关闭前还原。 自定义色值 脏的自定义色值在共享调色板关闭前还原。 更新日志→ GitHub Release↗ 文档标题字号与行距关闭标签与绘制一致 文档:未设置标记的标题「字号」与「行距」关闭标签跟随 h1–h3 / h1–h2 的 CSS 绘制,而不再错误显示正文默认值。
有效字号 未设置 textStyle.fontSize 的标题 1–3 按 CSS px 报告 18 / 15 / 12.75 pt。 行距诚实 未设置节点行距的标题 1–2 报告 1.32 / 1.4,而不再显示「默认行距」。 从绘制步进 增大/减小字号从有效标题字号步进,而不再静默按 10.5。 更新日志→ GitHub Release↗ 电子表格字号关闭标签与画布默认一致 电子表格:未设置格式的单元格在功能区与设置单元格格式中显示字号 11,与 FortuneSheet defaultFontSize 一致,而不再错误显示 10。
关闭标签即绘制 缺少 cell.fs 时回退到 DEFAULT_SPREADSHEET_FONT_SIZE(11)。 设置单元格格式对齐 字体选项卡默认值使用同一共享常量。 契约 单元、功能区与 spreadsheet-font-size-border-shortcuts a3s-test 覆盖默认关闭值。 更新日志→ GitHub Release↗ 段落样式库在标题 4–6 下仍保持紧凑 文档:在覆盖标题 4–6 后,「段落样式库」在一行内横向滚动,桌面高度仍符合视觉契约,关闭标签继续如实表示状态。
单行功能区 样式芯片横向滚动,而不再折成第二行网格。 诚实性保留 标题 4–6 仍可在样式库与紧凑「段落样式」组合框中选择。 契约 桌面视觉覆盖将样式库高度保持在 ≤ 50px,宽度仍在 250–270px 区间。 更新日志→ GitHub Release↗ 标题 4–6 段落样式关闭标签如实表示状态 文档与 Markdown:段落样式库与「段落样式」OfficeSelect 覆盖标题 1–6,活动 h4–h6 显示「标题 4」/「标题 5」/「标题 6」,而不再回落到「正文」。
关闭标签即状态 导入或粘贴的标题 4–6 在关闭组合框与样式库单选上保持「标题 4」/「标题 5」/「标题 6」。 应用覆盖 1–6 选项与 DOCX、Markdown 导入使用的 TipTap 标题模型一致。 契约 单元覆盖将标题 4–6 关闭标签钉在 DocumentHomeRibbon 与 MarkdownToolbar 上。 更新日志→ GitHub Release↗ 自定义排序孤立次序关闭标签如实表示状态 电子表格:自定义排序「次序」在活动自定义序列已不在 customLists 中时显示「自定义序列」,而不再显示命令名「新建自定义序列…」。「新建自定义序列…」只打开序列编辑。
关闭标签即状态 孤立自定义序列键在关闭组合框上显示「自定义序列」,不再是「新建自定义序列…」。 「新建自定义序列…」仍为命令 选择「新建自定义序列…」开始编辑序列,不会成为关闭值。 契约 单元覆盖将 orphan-custom-list 钉在 SpreadsheetSortOrderControls 上。 更新日志→ GitHub Release↗ 文档页面布局分栏关闭标签如实表示状态 文档:页面布局「分栏」在栏数大于 3 时以当前栏数(四栏 / 五栏 / 六栏)作为关闭标签,而不再显示命令名「更多分栏」。选项覆盖 1–6;「更多分栏」只打开分栏面板。
关闭标签即状态 四栏及以上时关闭组合框显示「四栏」/「五栏」/「六栏」,不再是「更多分栏」。 「更多分栏」仍为命令 栏数选项覆盖 1–6;「更多分栏」打开高级分栏面板,不会成为关闭值。 契约 单元、源布局与 word-insert-page-layout a3s-test 契约覆盖面板打开时的关闭值。 更新日志→ GitHub Release↗ 更新日志 SSG 拒绝未知表面 文档:文档插入域发布说明使用 changelog 卡片可标注的 Writer 表面;未知表面键会被拒绝,SSG 不再读取未定义表面文案的 .en。
用 writer,不用 document 0.215.0 文档插入域说明使用 surfaces: writer,与 ReleaseCard 标签一致。 类型化表面联合 OfficeReleaseSurface 为显式联合类型,拼写错误不能作为 changelog 表面通过编译。 单元契约 发布说明测试在文档 SSG 之前拒绝未知表面键。 更新日志→ GitHub Release↗ 文档插入域改为命令菜单 文档:插入功能区字段入口改为 Popover 命令菜单,不再使用禁用空闭合值的 OfficeSelect;闭合标签保持「插入域」,动作不再依赖假选择状态。
命令启动器,不是选择器 插入域使用 Popover + menuitem,不再使用 value="" 的 OfficeSelect。 闭合标签保持「插入域」 选择字段类型后立即插入,不会把选项保留为闭合值。 a3s-test 与 Playwright 契约 word-fields-phone.acl、文档工具条单元测试与 Playwright 以命令按钮和 menuitem 为目标。 文档编辑器→ GitHub Release↗ 单对象对齐到幻灯片保持可执行 演示:canAlignElement 允许单个选中单元,对齐命令菜单可打开并对齐到幻灯片,与 ArrangementController 单元素路径及工具条文案一致。
单单元即可对齐到幻灯片 canAlignElement 使用 selectionUnits.length >= 1,不再要求两个单元。 Playwright 单击标题即可打开对齐 功能条视觉契约在选中一个标题后断言对齐触发器可用。 canExecute 源码契约 布局测试锁定 presentation-editor 的 canAlignElement 为 >= 1。 演示编辑器→ GitHub Release↗ 演示对象对齐改为命令菜单 演示:对象对齐改为 Popover 命令菜单,不再使用禁用 none 闭合值的 OfficeSelect;闭合标签保持「对象对齐」,动作不再依赖假选择状态。
命令启动器而非选择器 对齐动作为 menuitem;Escape 关闭菜单;不再有 none 的 listbox 值。 闭合标签适配检查 Playwright 断言字体与对齐触发器上的中文闭合标签不溢出。 对齐动作单元覆盖 演示工具条测试会打开菜单并断言 alignElement 收到所选对齐值。 演示编辑器→ GitHub Release↗ 对话框内 OfficeSelect 菜单不再被裁切 共享壳层:对话框表面保持 overflow visible,使模态焦点范围内门户化的 OfficeSelect/Popover 菜单不被圆角对话框裁切;正文滚动行为不变。
对话框可见溢出 .ds-dialog 使用 overflow: visible;.ds-dialog-body 保持 overflow: auto 与 flex 增长以容纳高表单。 保留焦点范围内门户 菜单仍门户到对话框焦点根,Tab 陷阱与 inert 隔离保持不变。 布局契约覆盖 CSS 契约测试锁定溢出分工,裁切回归会 fail-closed。 表格编辑器→ GitHub Release↗ Escape 先关闭 OfficeSelect 再关闭父对话框 共享壳层:对话框 Escape 优先交给已打开的 OfficeSelect/Popover,使排序、自动筛选、超链接、数据验证等对话框在列表关闭前保持打开。
嵌套 Escape 归属 对话框捕获阶段焦点范围在 openPopoverLayers 非空时跳过 Escape;原生 dialog cancel 同样受保护。 OfficeSelect 与颜色菜单 共享 Popover 层级优先消费 Escape,覆盖模态对话框内的列表与嵌套门户菜单。 回归覆盖 单元测试断言 Escape 先关闭下拉,第二次 Escape 再关闭父对话框。 表格编辑器→ GitHub Release↗ 继续加宽功能区/面板 OfficeSelect 中文闭合标签 共享壳层:文档表格布局与边框目标 OfficeSelect 触发器加宽;演示文稿动画触发字段适配「与上一动画同时」「上一动画之后」;表格数字格式栈与日期时间触发器加宽以适配「会计专用」「科学计数」「日期和时间」;自定义排序删除残留的原生 select 样式。
文档表格选择 布局选择 104px;边框目标选择 128px,适配中文闭合标签。 演示文稿动画触发 动画选项触发字段加宽到 168px。 表格数字格式栈 数字格式 OfficeSelect 与日期时间触发器改为 112px;自定义排序层级样式不再作用于原生 select。 文档编辑器→ GitHub Release↗ 功能区 OfficeSelect 闭合标签适配中文宽度 共享壳层:文档功能区连接符/文本框线宽、连接符种类、行距与表格边框目标 OfficeSelect 触发器加宽;插入域闭合标签改为「插入域…」。表格功能区取消默认把每个 OfficeSelect 压成 62px。OfficeSelect 迁移后删除残留的原生 select 功能区/编辑器样式。
文档功能区宽度 连接符/文本框线宽选择加宽到 118px;行距 96px;表格边框目标 110px;插入域闭合标签缩短。 表格默认宽度 功能区 OfficeSelect 默认 width:auto;具名字体/字号/数字格式类仍保留固定宽度。 残留 select 样式 共享功能区与编辑器壳层在 OfficeSelect 迁移后不再样式化原生 select。 文档编辑器→ GitHub Release↗ 表格对话框将原生 select 迁移到 OfficeSelect 共享壳层:自定义排序、数据验证、自动筛选条件与超链接工作表对话框改用 OfficeSelect,不再使用原生 select。Field 的 aria-required/invalid/describedby 到达组合框;选项暴露 data-value 供 a3s-test。自定义序列管理器仍用 size=10 列表框;0.198.0 起的功能区嵌套 portal 合约不变。
自定义排序与外观键 列/行、排序依据、次序、外观目标与位置选择改用 OfficeSelect,自定义序列按分组展示。 数据验证、自动筛选、超链接 允许/运算符/错误样式、主/次筛选条件与工作表目标离开原生 select。 自动化钩子 触发器保留 data-selected-value;选项增加 data-value;e2e ACL 先点 role=combobox 再点 role=option。 表格编辑器→ GitHub Release↗ 文档 PDF 绘制 checkered 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 checkered 艺术段落边框绘制为沿测量边的重复 2×2 棋盘格(交错斜线填充)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
2×2 棋盘格 checkered 沿测量边绘制带交错斜线填充的重复 2×2 棋盘格。 进入矢量计划 checkered 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 checkedBarColor 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 checkedBarColor 艺术段落边框绘制为沿测量边的重复方格条纹段(单斜线填充)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
彩色方格条 checkedBarColor 沿测量边绘制带单斜线填充的重复方格条纹边框段。 进入矢量计划 checkedBarColor 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 checkedBarBlack 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 checkedBarBlack 艺术段落边框绘制为沿测量边的重复方格条纹段。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
方格条纹段 checkedBarBlack 沿测量边绘制重复的方格条纹边框段。 进入矢量计划 checkedBarBlack 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 champagneBottle 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 champagneBottle 艺术段落边框绘制为沿测量边的重复香槟瓶剪影(含软木塞与标签带)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
酒瓶剪影 champagneBottle 沿测量边绘制带软木塞与标签带的重复酒瓶造型。 进入矢量计划 champagneBottle 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 chainLink 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 chainLink 艺术段落边框绘制为沿测量边的重复交错椭圆环链。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
交错椭圆环链 chainLink 沿测量边绘制带交错穿插的重复椭圆环链造型。 进入矢量计划 chainLink 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 certificateBanner 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 certificateBanner 艺术段落边框绘制为沿测量边的重复缺口缎带造型。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
缺口缎带造型 certificateBanner 沿测量边绘制带缺口端与折痕的重复缎带造型。 进入矢量计划 certificateBanner 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 celticKnotwork 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 celticKnotwork 艺术段落边框绘制为沿测量边的重复菱形结织带。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
菱形结织带 celticKnotwork 沿测量边绘制带交叉织带的重复菱形结造型。 进入矢量计划 celticKnotwork 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 candyCorn 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 candyCorn 艺术段落边框绘制为沿测量边的重复玉米糖三角形。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
玉米糖三角形 candyCorn 沿测量边绘制带两道分带的重复三角形玉米糖造型。 进入矢量计划 candyCorn 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 cakeSlice 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 cakeSlice 艺术段落边框绘制为沿测量边的重复蛋糕切片楔形。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
蛋糕切片楔形 cakeSlice 沿测量边绘制带糖霜脊与径向分隔线的重复楔形造型。 进入矢量计划 cakeSlice 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 功能区嵌套下拉与原生选择框修复 共享壳层:嵌套 portal 菜单不再关掉父级功能区弹出层;表格边框/汇总行使用 OfficeSelect 与 OfficeColorPicker;文档页面设置与情景功能区下拉保持固定宽度并对齐 24px;下划线与表格组合框高度对齐功能区行;下拉与颜色触发器暴露 data-selected-value 供 e2e 断言。
嵌套 portal 关闭行为 指针与焦点的外侧关闭会忽略更高层打开的菜单,使边框样式/颜色菜单在功能区弹出层内可用。 表格面板迁移到 OfficeSelect 边框样式/颜色与表格汇总函数离开原生 select/颜色输入,改用共享 Office 控件。 24px 情景功能区下拉 页面设置、表格、连接符、图片、文本框、域插入与下划线控件在共享 24px 行上保持可读固定宽度。 电子表格编辑器→ GitHub Release↗ 功能区下拉布局修复 共享壳层:演示文稿功能区不再被压成 44px;演示文稿、表格与 Markdown 的 OfficeSelect 使用固定功能区宽度;功能区颜色选择与表格边框控件对齐到 24px;浮动菜单保持 portal 的 top/left。单元测试与 Playwright 功能区下拉证据覆盖该契约。
74px 演示功能区行 去掉 presentation-toolbar 的 44px 高度钉死,让字体与对齐下拉落在共享功能区行。 固定下拉与颜色宽度 演示/Markdown/表格下拉使用专用功能区宽度;chrome 将下拉触发器与颜色工具定为 24px。 Portal 安全菜单 浮动 OfficeSelect 菜单保持 portal 的 top/left,而不再使用相对触发器的偏移。 演示文稿编辑器→ GitHub Release↗ 文档 PDF 绘制 balloonsHotAir 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 balloonsHotAir 艺术段落边框绘制为沿测量边的重复热气球剪影。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
热气球剪影 balloonsHotAir 沿测量边绘制重复的气囊与吊篮造型。 进入矢量计划 balloonsHotAir 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 balloons3Colors 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 balloons3Colors 艺术段落边框绘制为沿测量边的重复气球剪影。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
气球剪影 balloons3Colors 沿测量边绘制重复的球身、打结与短线造型。 进入矢量计划 balloons3Colors 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 babyRattle 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 babyRattle 艺术段落边框绘制为沿测量边的重复拨浪鼓剪影。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
拨浪鼓剪影 babyRattle 沿测量边绘制重复的鼓头、颈杆和手柄环造型。 进入矢量计划 babyRattle 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 babyPacifier 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 babyPacifier 艺术段落边框绘制为沿测量边的重复奶嘴剪影。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
奶嘴剪影 babyPacifier 沿测量边绘制重复的手柄环、护盾和奶嘴造型。 进入矢量计划 babyPacifier 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 archedScallops 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 archedScallops 艺术段落边框绘制为沿测量边的重复拱形扇贝。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
拱形扇贝 archedScallops 沿测量边绘制重复的半拱扇贝。 进入矢量计划 archedScallops 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 vine 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 vine 艺术段落边框绘制为沿测量边的卷曲藤蔓剪影(带对生叶片的茎)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
藤蔓剪影 vine 沿测量边绘制带对生叶片的卷曲茎。 进入矢量计划 vine 进入矢量边框计划;不会静默跳过。 范围保持有界 其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 apples 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 apples 艺术段落边框绘制为沿测量边的苹果剪影(圆身体 + 果柄与叶片)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
苹果剪影 apples 沿测量边绘制带果柄与叶片的圆身体。 进入矢量计划 apples 进入矢量边框计划;不会静默跳过。 范围保持有界 vine 等其余装饰性艺术边框与完整 PDF/UA 认证仍不宣称。 文档编辑器→ GitHub Release↗ 修订正文准入带属性 note-ref 字形 Phase 0 保真:仅带一个 Word 命名空间数字 w:val 的 w:footnoteRef / w:endnoteRef / w:annotationRef 可进入整段标记、段落分隔与文本移动修订正文。空 *Ref 与带 w:id 的 *Reference 仍准入。畸形带属性引用与带属性分隔符仍失败关闭。
标记 / 分隔 / 移动 合格修订正文准入带属性 footnoteRef、endnoteRef 与 annotationRef。 必需 w:val 必须恰好一个 Word 命名空间数字 val;多余属性失败关闭。 既有合约保留 空 *Ref 与带数字 id 的 *Reference 仍准入。 段落标记修订→ GitHub Release↗ 修订正文准入带 id 的 endnoteReference Phase 0 保真:仅带一个 Word 命名空间数字 w:id 的空 w:endnoteReference 可进入整段标记、段落分隔与文本移动修订正文,与 0.187.0 的 footnoteReference 对称。带属性 footnoteRef/endnoteRef 与畸形标记仍失败关闭。
标记 / 分隔 / 移动 合格修订正文准入带数字 id 的 endnoteReference。 对称 footnoteReference 与 0.187.0 的 footnoteReference 使用相同有界 id 合约。 带属性引用仍关闭 带属性 footnoteRef/endnoteRef 仍失败关闭。 段落标记修订→ GitHub Release↗ 修订正文准入带 id 的 footnoteReference Phase 0 保真:仅带一个 Word 命名空间数字 w:id 的空 w:footnoteReference 可进入整段标记、段落分隔与文本移动修订正文。带属性 footnoteRef、endnoteReference 与畸形标记仍失败关闭。
标记 / 分隔 / 移动 合格修订正文准入带数字 id 的 footnoteReference。 必需 w:id 必须恰好一个 Word 命名空间数字 id;多余属性失败关闭。 相关标记仍关闭 带属性 footnoteRef 与 endnoteReference 仍失败关闭。 段落标记修订→ GitHub Release↗ 项目符号 numberingChange 可审阅 Phase 0 保真:当前级项目符号 w:numberingChange(ST_NumberFormat nfc 23)会导入为可接受/拒绝的原子项目符号列表审阅卡片,并支持原生往返。图片格式、缺失 numId 与畸形 original 仍失败关闭。
准入 nfc 23 当前级项目符号 original 成为可审阅的项目符号列表修订。 接受 / 拒绝 拒绝会按先验项目符号后缀恢复 disc/circle/square。 图片仍关闭 图片编号与畸形 original 仍失败关闭。 编号修订→ GitHub Release↗ Companion move-range 准入两层嵌套表 Phase 0 保真:companion w:move*Range* 书签现在准入最多两层嵌套 move-path 表(三个 w:tbl 祖先),含单个简单 w:sdt。四个及以上 move-path 表仍失败关闭。此切片收口 R0 move-range 嵌套家族。
两层嵌套 外层+中层+内层均包含移动的 move-path 表现已准入。 含 SDT 包裹 相同深度在单个简单内容控件下同样生效。 四层仍关闭 四个及以上 move-path 表仍失败关闭。 移动修订→ GitHub Release↗ Companion move-range 准入 SDT 包裹的嵌套表 Phase 0 保真:companion w:move*Range* 书签现在准入单个简单 w:sdt 包裹一层嵌套 move-path 表。更深嵌套与嵌套/旁侧 SDT 仍失败关闭。
SDT + 一层嵌套 单个简单内容控件可包裹外层+内层 move-path 表。 更深嵌套仍关闭 三层及以上 move-path 表仍失败关闭。 嵌套 SDT 仍关闭 嵌套或旁侧 SDT 包装仍被拒绝。 移动修订→ GitHub Release↗ Companion move-range 准入移动旁的嵌套表 Phase 0 保真:companion w:move*Range* 书签现在准入与移动同单元格的扁平、无修订、纯文本嵌套 w:tbl。更深嵌套、SDT+嵌套表组合,以及旁侧嵌套表内的修订/富内容仍失败关闭。
旁侧嵌套 w:tbl 同单元格纯文本嵌套表不再阻止 companion 书签。 旁侧修订内容仍关闭 旁侧嵌套表内的修订或富内容仍失败关闭。 更深嵌套仍不在范围内 更深嵌套与 SDT+嵌套表组合仍被拒绝。 移动修订→ GitHub Release↗ 文档 PDF 将标题写入 Document StructElem /Alt Phase 0 保真:浏览器文档 PDF 导出现在将文档标题写入 Document StructElem /Alt,与 Info 字典标题及 DisplayDocTitle 对齐。0.179.0–0.181.0 的目录 / StructElem /Lang 与 Span BDC /Lang 保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
Document /Alt 来自标题 结构树 Document 携带与 Info 字典相同的标题。 语言栈不变 目录 / StructElem /Lang 与 Span BDC /Lang 保持原样。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 在 Span 标记内容上写入 /Lang Phase 0 保真:浏览器文档 PDF 导出现在矢量绘制前播种文档语言,并在 Span BDC 上与 ActualText / MCID 一并写入 /Lang。0.179.0–0.180.0 的目录与 StructElem /Lang 保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
Span BDC /Lang 在矢量绘制前播种语言后,内容流携带语言标签。 目录与 StructElem 不变 0.179.0–0.180.0 的 putCatalog 与 StructElem /Lang 保持原样。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 写入超出 jsPDF 枚举的目录 /Lang Phase 0 保真:浏览器文档 PDF 导出现在通过 putCatalog 为任意规范化语言标签写入目录 /Lang,替代会静默跳过枚举外标签(如 yue)的 jsPDF setLanguage。0.179.0 的 StructElem /Lang 保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
通过 putCatalog 写入目录 /Lang 规范化标签只写入目录一次,覆盖 jsPDF 枚举之外的标签。 StructElem /Lang 不变 0.179.0 起大纲、/P、Span 与 Document 语言保持原样。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 将 /Lang 写入 StructElem Phase 0 保真:浏览器文档 PDF 导出现在在设置文档语言时,将 /Lang 写入大纲、页级 /P 与 Span StructElem(Document 原本已有 /Lang)。0.178.0 的 H → P → Span 嵌套保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
大纲、/P 与 Span 的 /Lang 结构元素继承文档语言标签,便于辅助技术消费。 嵌套不变 H1–H6 下的 H → P → Span 与无匹配页级 /P 包装保持原样。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 将 H1–H6 下 Span 挂到子 /P Phase 0 保真:浏览器文档 PDF 导出现在将按页匹配的矢量文本 Span MCID 经子 /P StructElem 挂到 H1–H6 大纲角色下(H → P → Span,带 /Pg)。大纲级 /P 角色仍直接挂 Span。0.177.0 起无匹配页的页级 /P 包装保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
H1–H6 下的 H → P → Span 标题大纲角色把按页匹配的 Span 包在带子 /Pg 的子 /P 中。 大纲 /P 仍直接挂 Span 大纲级 /P 与无匹配页的页级 /P 包装行为保持原样。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 将无匹配 Span 挂到页级 /P 下 Phase 0 保真:浏览器文档 PDF 导出现在无大纲角色的页面上将未匹配的矢量文本 Span MCID 挂到页级 /P StructElem 下(Document → P → Span,带 /Pg)。0.172.0 起按页匹配到 H1–H6/P 的 Span 保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
无匹配 Span 的页级 /P Document 子节点为大纲根与页级 /P 包装,不再直接挂裸 Span。 大纲下 Span 嵌套不变 按页匹配的 Span 仍挂在该页最后一个大纲角色下。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 加深 MarkInfo、Tabs 与大纲 /Pg Phase 0 保真:浏览器文档 PDF 导出现在目录写入 /MarkInfo << /Marked true /Suspects false >>、目录 /Tabs /S(按结构树阅读顺序),并在可用时为大纲 H1–H6/P StructElem 写入 /Pg。0.175.0 的 Layout Artifact 与 Span 嵌套保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
MarkInfo Suspects false 目录 /MarkInfo 在 /Marked true 之外写入 /Suspects false。 目录 Tabs /S 目录 /Tabs /S 让带标签 PDF 消费方按结构树顺序阅读。 大纲 StructElem /Pg H1–H6/P 大纲角色在页面对象可用时携带 /Pg。 文档编辑器→ GitHub Release↗ 文档 PDF 装饰绘制改用 Layout Artifact BDC Phase 0 保真:浏览器文档 PDF 导出现将 Writer 高亮、下划线与段落边框 Artifact 从裸 /Artifact BMC 升级为 /Artifact << /Type /Layout >> BDC … EMC(仍不分配 MCID / StructElem)。Span 与大纲角色嵌套保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
Layout Artifact BDC 高亮、下划线与段落边框在 /Artifact << /Type /Layout >> BDC … EMC 内绘制。 Artifact 不分配 MCID 装饰性 Artifact 不进入 ParentTree / StructElem 内容链接。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 将装饰性绘制标记为 Artifact Phase 0 保真:浏览器文档 PDF 导出现将 Writer 高亮、下划线与段落边框矢量绘制包在 /Artifact BMC … EMC 中(不分配 MCID / StructElem)。Span 与大纲角色嵌套保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
装饰绘制的 Artifact BMC 高亮、下划线与段落边框在 /Artifact BMC … EMC 内绘制。 Artifact 不分配 MCID 装饰性 Artifact 不进入 ParentTree / StructElem 内容链接。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 按层级嵌套大纲角色 Phase 0 保真:浏览器文档 PDF 导出现按大纲层级将大纲派生的 H1–H6/P StructElem 嵌套到父角色 /K 下(与书签相同的层级栈;Document 子节点仅为根角色)。0.172.0 的同页 Span 嵌套保持不变。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
大纲角色 /K 嵌套 H2 通过书签层级栈嵌套到 H1 的 /K 下;Document /K 仅列出根角色。 Span 嵌套不变 同页 Span MCID 仍挂到该页最后一个大纲角色下。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 将 Span MCID 嵌套到大纲角色下 Phase 0 保真:浏览器文档 PDF 导出现将同页匹配的矢量文本 Span MCID 嵌套到大纲派生的 H1–H6/P StructElem /K 下(取该页最后一个大纲角色;无匹配页的 Span 仍作为 Document 子节点)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
大纲 /K 嵌套 同页 Span StructElem 通过 /K 与 /P 成为该页最后一个大纲角色的子节点。 无匹配页保持扁平 无大纲角色页面上的 Span 仍作为 Document 子节点。 PDF/UA 认证仍不在范围内 不宣称其余装饰性艺术边框与完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 cabins 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 cabins 艺术段落边框绘制为沿测量边的小屋剪影(三角屋顶 + 带门缺口的矩形屋身)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
小屋剪影 cabins 沿测量边绘制三角屋顶 + 带门缺口的矩形屋身。 显式艺术边框准入 cabins 进入矢量边框计划;不会静默跳过。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 birds 与 birdsFlight 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 birds / birdsFlight 艺术段落边框绘制为沿测量边的栖息与飞行鸟类剪影。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
栖息与飞行剪影 birds 绘制栖息侧影;birdsFlight 绘制展开双翼飞行姿态。 显式艺术边框准入 birds / birdsFlight 进入矢量边框计划;不会静默跳过。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 bats 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 bats 艺术段落边框绘制为沿测量边的翅膀剪影母题。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
翅膀剪影 bats 沿测量边绘制闭合头部 + 双翼折线母题。 显式艺术边框准入 bats 进入矢量边框计划;不会静默跳过。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 basicWide 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 basicWideInline / basicWideMidline / basicWideOutline 艺术段落边框绘制为沿测量边的粗几何轨线。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
粗几何轨线 basicWideOutline 绘制双粗轨;basicWideMidline 单粗轨;basicWideInline 粗轨加外侧细伴线。 显式艺术边框准入 basicWideInline / basicWideMidline / basicWideOutline 进入矢量边框计划;不会静默跳过。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 basicThinLines 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 basicThinLines 艺术段落边框绘制为沿测量边的三条平行细线。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
平行细线 basicThinLines 沿测量边绘制三条间距细线。 显式艺术边框准入 basicThinLines 进入矢量边框计划;不会静默跳过。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 basicBlackDashes 与 basicWhiteDashes 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 basicBlackDashes / basicWhiteDashes 艺术段落边框绘制为离散短划印章(黑色以平行伴划加密)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
离散短划印章 basicBlackDashes / basicWhiteDashes 沿测量边放置间距短划。 黑色加密;白色描边 黑色增加平行伴划;白色仅描边且间距更宽。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 basicBlackDots 与 basicWhiteDots 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 basicBlackDots / basicWhiteDots 艺术段落边框绘制为离散圆点印章(黑色以同心内圆加密)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
离散圆点印章 basicBlackDots / basicWhiteDots 沿测量边放置间距圆点。 黑色加密;白色描边 黑色增加同心内圆;白色仅描边且间距更宽。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 basicBlackSquares 与 basicWhiteSquares 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 basicBlackSquares / basicWhiteSquares 艺术段落边框绘制为离散方块印章(黑色以内嵌方块与对角线加密)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
离散方块印章 basicBlackSquares / basicWhiteSquares 沿测量边放置间距方块。 黑色加密;白色描边 黑色增加内嵌方块与对角线;白色仅描边且间距更宽。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 moons 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 moons 艺术段落边框绘制为显式月牙母题。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
月牙母题 moons 沿测量边绘制外弧 + 内弧闭合折线。 交替月相 相邻月亮沿边交替切口方向,形成月相外观。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 marquee 与 marqueeToothed 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 marquee / marqueeToothed 艺术段落边框绘制为显式矩形母题(marqueeToothed 交替垂直偏移)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
矩形母题 marquee 沿测量边绘制矩形。 齿形 marquee 偏移 marqueeToothed 交替垂直偏移,形成齿形外观。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 ovals 与 rings 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 ovals / rings 艺术段落边框绘制为显式椭圆母题(rings 嵌套更密内椭圆)。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
椭圆母题 ovals 沿测量边绘制椭圆。 嵌套 rings 椭圆 rings 加密间距并绘制嵌套内椭圆。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 triangles / triangle1 / triangle2 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 triangles / triangle1 / triangle2 艺术段落边框绘制为显式闭合等腰三角。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
闭合等腰三角 triangles 沿测量边绘制闭合等腰三角。 triangle1 更密、triangle2 反向 triangle1 使用更密周期;triangle2 翻转振幅。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 sawtooth 与 sharksTeeth 艺术边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 sawtooth / sharksTeeth 艺术段落边框绘制为显式三角齿折线。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
sawtooth 三角齿 sawtooth 沿测量边绘制单侧三角齿。 sharksTeeth 更密齿形 sharksTeeth 使用更密周期,并在底边/右边翻转振幅。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 zigZag 艺术边框并设置 DisplayDocTitle Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 zigZag / zigZagStitch 艺术段落边框绘制为显式锯齿折线,并设置目录 /ViewerPreferences << /DisplayDocTitle true >>。其余装饰性艺术边框与完整 PDF/UA 认证仍不在范围内。
zigZag 与 zigZagStitch 锯齿线 这些艺术样式沿测量边绘制锯齿折线。 DisplayDocTitle 首选项 带标题的目录声明 /DisplayDocTitle true,供阅读器标题栏使用。 其余艺术边框仍不在范围内 不宣称苹果、藤蔓等其余装饰性艺术边框,也不宣称完整 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制三维与 inset/outset 段落边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 threeDEmboss / threeDEngrave / inset / outset 段落边框绘制为显式双色高光+阴影偏移(不会静默近似成单线)。艺术边框与完整 PDF/UA 认证仍不在范围内。
双色三维浮雕与雕刻 threeDEmboss 与 threeDEngrave 沿测量边绘制高光与阴影偏移。 inset 与 outset 浮雕 inset 跟随雕刻光照;outset 跟随浮雕光照。 艺术边框仍不在范围内 不宣称装饰性艺术边框与 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 wave 与 doubleWave 段落边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 的 wave 与 doubleWave 段落边框绘制为显式正弦折线(不会静默近似成直线)。艺术边框、三维边框与完整 PDF/UA 认证仍不在范围内。
显式波形折线 wave 边框沿测量边绘制正弦折线。 doubleWave 为平行折线 doubleWave 为同一边绘制两条偏移的正弦折线。 艺术与三维边框仍不在范围内 不宣称艺术边框、三维浮雕/雕刻与 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 通过 ParentTree 与 MCID 链接矢量文本 Phase 0 保真:浏览器文档 PDF 导出现通过页内 /MCID、页面 /StructParents 与 StructTreeRoot /ParentTree Span 子节点链接矢量运行的 /Span ActualText。大纲角色桩保持空 /K。完整 PDF/UA 认证与艺术/波浪/三维边框仍不在范围内。
矢量 ActualText Span 上的 MCID 每次矢量文本运行发出带 /ActualText 与页内 /MCID 的 /Span。 ParentTree 与 StructParents 页面设置 /StructParents;StructTreeRoot 发出 Span 子节点的 /ParentTree 数字树。 完整 PDF/UA 认证仍不在范围内 大纲角色桩保持空 /K;不宣称 PDF/UA 认证与艺术/波浪/三维边框。 文档编辑器→ GitHub Release↗ 文档 PDF 为大纲角色加入 StructTreeRoot 桩 Phase 0 保真:浏览器文档 PDF 导出现加入目录链接的 StructTreeRoot 桩(Document 以及由大纲派生的 H1–H6/P 子节点,/K 为空)。ParentTree / MCID 内容链接、完整 PDF/UA 认证与艺术/波浪/三维边框仍不在范围内。
目录链接的 StructTreeRoot 桩 导出的 PDF 发出带 Document 父节点以及由大纲派生的标题或段落子节点的 StructTreeRoot。 大纲级别映射到结构角色 书签大纲级别在桩树中成为 H1–H6 或 P 角色。 完整 PDF/UA 内容链接仍不在范围内 子节点保持空 /K;不宣称 ParentTree、MCID 与 PDF/UA 认证。 文档编辑器→ GitHub Release↗ 文档 PDF 为矢量文本加入 MarkInfo 与 ActualText Phase 0 保真:浏览器文档 PDF 导出现加深无障碍引导,在目录写入 /MarkInfo << /Marked true >>,并在矢量文本运行周围写入 /Span ActualText。完整 PDF/UA 结构树与艺术/波浪/三维边框仍不在范围内。
目录 MarkInfo 已标记标志 导出的 PDF 在目录上设置 /MarkInfo << /Marked true >>,供带标签 PDF 消费方使用。 矢量文本运行上的 ActualText 矢量文本绘制将每次运行包裹在 /Span ActualText 标记内容序列中。 完整 PDF/UA 树仍不在范围内 本切片仅加深带标签引导;不宣称 StructTreeRoot / 完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ 文档 PDF 绘制 Writer between 与 bar 段落边框 Phase 0 保真:浏览器文档 PDF 导出现将 Writer between 与 bar 段落边绘制为矢量描边(样式同 0.151.0),并在测量段落几何上将 between→bottom、bar→left。艺术/波浪/三维边框与完整 PDF/UA 结构树仍不在范围内。
PDF 导出中的 between 与 bar 边 测量得到的段落框以与上/左/下/右相同的常见样式描边 between 与 bar 边。 between 与 bar 的几何映射 在测量段落几何上,between 映射为底边,bar 映射为左边。 艺术边框与 PDF/UA 仍不在范围内 本切片仅加深 between/bar 矢量绘制;不宣称艺术/波浪/三维边框与完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ 文档 PDF 将 Writer 段落边框绘制为矢量描边 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 段落边框绘制为矢量描边(上/左/下/右;single/thick/double/dashed/dotted),来源为 data-office-paragraph-borders 或 CSS,并在栅格画布上清除边框条后再描边。艺术/波浪/三维边框、between/bar 边以及完整 PDF/UA 结构树仍不在范围内。
PDF 导出中的段落边框矢量描边 测量得到的段落框在与矢量文本层相同的页面几何上描边上、左、下、右 PDF 路径。 准入常见边框样式 single、thick、double、dashed 与 dotted 边从 data-office-paragraph-borders 或 CSS 解析。 艺术边框与 PDF/UA 仍不在范围内 本切片仅加深常见段落边的矢量绘制;不宣称艺术/波浪/三维边框、between/bar 边与完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ 文档 PDF 将 Writer 突出显示绘制为矢量填充 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 文本突出显示绘制为矢量填充条,来源为 data-office-highlight 或可移植突出显示调色板中匹配的 CSS 背景,并位于可搜索矢量文本层之下。段落边框与完整 PDF/UA 结构树仍不在范围内。
PDF 导出中的突出显示矢量填充 带突出显示的测量文本在与矢量文本层相同的页面几何上填充 PDF 矩形。 Writer 与 CSS 突出显示来源 突出显示颜色从 data-office-highlight 或匹配可移植调色板的 CSS 背景解析。 边框与 PDF/UA 仍不在范围内 本切片仅加深突出显示矢量绘制;不宣称段落边框与完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ 文档 PDF 将 Writer 下划线绘制为矢量路径 Phase 0 保真:浏览器文档 PDF 导出现将 Writer 下划线绘制为矢量路径(single / double / thick),来源为 data-office-underline-*、<u> 或 CSS 装饰,并在测量文本下方清除细条后再描边。更广边框与完整 PDF/UA 结构树仍不在范围内。
PDF 导出中的下划线矢量路径 带下划线的测量文本在与矢量文本层相同的页面几何上描边 single、double 或 thick PDF 路径。 Writer 与 CSS 下划线来源 下划线方案从 data-office-underline-* 属性、<u> 标记或 CSS text-decoration 解析。 边框与 PDF/UA 仍不在范围内 本切片仅加深下划线矢量绘制;不宣称段落边框与完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ 文档 PDF 书签纳入 Writer 大纲级别段落 Phase 0 保真:浏览器文档 PDF 书签现收集 p[data-office-outline-level] 段落与 h1–h6,并按级别嵌套。完整 PDF/UA 结构树仍不在范围内。
PDF 书签中的大纲级别段落 Writer 大纲级别段落(p[data-office-outline-level])与 h1–h6 一并进入导出的 PDF 大纲。 级别嵌套保留 大纲级别在 PDF 书签树中的嵌套与编辑器中 Writer 大纲级别一致。 完整 PDF/UA 结构仍不在范围内 本切片仅加深标题/语言/标题大纲引导;不宣称完整 PDF/UA 结构树。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空 separator 与 continuationSeparator 字形 Phase 0 保真:整段段落标记、段落分隔与文字移动修订正文现准入无属性空 w:separator 与 w:continuationSeparator CT_Empty 字形。批注邻接空字形族至 0.147.0 完成;带属性分隔符与带属性批注字形仍失败闭合。
修订正文中的空分隔符字形 无属性空 w:separator 与 w:continuationSeparator 字形可进入整段段落标记、段落分隔与文字移动修订正文。 批注邻接空字形族完成 这些字形与软换行、制表符、连字符、域字形、footnoteRef、endnoteRef 与 annotationRef 一并完成无属性 CT_Empty 批注邻接集合,至 0.147.0。 带属性分隔符与批注字形保持失败闭合 带属性分隔符与带属性 footnoteRef / endnoteRef / annotationRef 仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空 annotationRef 字形 Phase 0 保真:整段段落标记、段落分隔与文字移动修订正文现准入无属性空 w:annotationRef CT_Empty 字形。带属性 annotationRef 与分隔符仍失败闭合。
修订正文中的空 annotationRef 无属性空 w:annotationRef 字形可进入整段段落标记、段落分隔与文字移动修订正文。 标记、分隔与移动共享准入 该字形并入既有软换行、制表符、连字符、域字形、footnoteRef 与 endnoteRef 所用的无属性 CT_Empty 准入集合。 带属性 annotationRef 与分隔符保持失败闭合 带属性 annotationRef 与分隔符仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空 endnoteRef 字形 Phase 0 保真:整段段落标记、段落分隔与文字移动修订正文现准入无属性空 w:endnoteRef CT_Empty 字形。带属性 endnoteRef、带 id 的 endnoteReference、annotationRef 与分隔符仍失败闭合。
修订正文中的空 endnoteRef 无属性空 w:endnoteRef 字形可进入整段段落标记、段落分隔与文字移动修订正文。 标记、分隔与移动共享准入 该字形并入既有软换行、制表符、连字符、域字形与 footnoteRef 所用的无属性 CT_Empty 准入集合。 带属性与兄弟批注字形保持失败闭合 带属性 endnoteRef、带 id 的 endnoteReference、annotationRef 与分隔符仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空 footnoteRef 字形 Phase 0 保真:整段段落标记、段落分隔与文字移动修订正文现准入无属性空 w:footnoteRef CT_Empty 字形。带属性 footnoteRef、带 id 的 footnoteReference、endnoteRef、annotationRef 与分隔符仍失败闭合。
修订正文中的空 footnoteRef 无属性空 w:footnoteRef 字形可进入整段段落标记、段落分隔与文字移动修订正文。 标记、分隔与移动共享准入 该字形并入既有软换行、制表符、连字符与域字形所用的无属性 CT_Empty 准入集合。 带属性与兄弟批注字形保持失败闭合 带属性 footnoteRef、带 id 的 footnoteReference、endnoteRef、annotationRef 与分隔符仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入编号修订中省略的 w:ilvl 作为 OOXML 默认级别 0 Phase 0 保真:编号修订在存在 w:numId 与受支持的 w:numberingChange 时,将省略的 w:ilvl 按 OOXML 默认级别 0 准入。缺少 numId、当前级项目符号/图片格式,以及格式错误的先验仍失败闭合。
省略的 w:ilvl 默认为级别 0 无显式 w:ilvl 的 CT_NumPr 导入为可审阅的 OOXML 默认级别编号修订。 需 numId 与受支持的 numberingChange 准入仍要求段落上恰好一个 w:numId,以及受支持的 w:numberingChange 标记。 缺少 numId 与项目符号/图片仍失败闭合 缺少 numId、当前级项目符号/图片格式,以及格式错误的先验仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入无关系仅属性 tblpPr 表格式修订先验 Phase 0 保真:可审阅 w:tblPrChange 现准入无关系仅属性 w:tblpPr 先验(已知锚点/规格、有界 twips、可选 FromText)。非法或关系绑定的 tblpPr 仍失败闭合。
仅属性浮动先验 已知锚点/规格、有界 twips 与可选 FromText 距离作为可审阅 table-formatting 浮动快照往返。 实时修订跟踪 在修订跟踪开启时编辑表浮动会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 非法 tblpPr 仍失败闭合 格式错误、关系绑定或越界的 tblpPr 先验仍仅作诊断,不会虚构审阅 UI。 文档编辑器→ GitHub Release↗ Writer 准入多级编号先验中的不透明兄弟 ST_NumberFormat 值 Phase 0 保真:多级 numberingChange 的 w:original 可携带不透明兄弟 ST_NumberFormat nfc,同时当前 w:ilvl 保持常见十进制、字母或罗马数字(nfc 0–4)。当前级项目符号与图片格式仍失败闭合。
w:original 中的不透明兄弟格式 兄弟 %[ilvl]:[start]:[nfc]:[suff] 段可将非常见 ST_NumberFormat 值作为不透明先验文本往返。 当前 ilvl 保持常见 nfc 0–4 段落 w:ilvl 段须保持十进制、字母或罗马数字,修订才可继续审阅。 当前级项目符号/图片仍失败闭合 当前级的项目符号、图片及其他非常见格式仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入一层嵌套表 companion 移动范围书签 Phase 0 保真:移动祖先至多两层且均含受支持纯文本移动的 w:tbl 时,companion w:move*Range* 书签可在导入时准入。更深嵌套、移动旁的嵌套表,以及 SDT 与嵌套表组合仍失败闭合。
一层嵌套表 companion 正文级 move*Range* Start/End 夹住外层表,且内层嵌套表含受支持移动时,仍与文字移动保留匹配书签。 移动祖先 ≤2 层表 两层包围表都必须含有该移动;祖先超过两层表仍关闭。 更深、旁路与 SDT+嵌套仍失败闭合 更深嵌套、移动旁的嵌套表,以及 SDT 与嵌套表组合仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入简单 SDT 包装的 companion 移动范围书签 Phase 0 保真:至多一个含受支持纯文本移动(段落或表格)的 w:sdt(可带 w:sdtPr chrome)时,companion w:move*Range* 书签可在导入时准入。嵌套 SDT、移动旁的 SDT、嵌套表与分节 sandwich 仍失败闭合。
简单 SDT companion 正文级 move*Range* Start/End 夹住一个简单 w:sdt 时,仍与文字移动保留匹配书签。 允许 sdtPr chrome 准入的 SDT 可在 w:sdtContent 旁携带 w:sdtPr 属性 chrome。 嵌套 SDT 与嵌套表仍失败闭合 嵌套 SDT、移动旁的 SDT、嵌套表与分节 sandwich 仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入多单元格表格 companion 移动范围书签 Phase 0 保真:一张 w:tbl 恰好在一个 w:tc 内含受支持纯文本移动,且兄弟单元格仅含未跟踪纯文本内容时,companion w:move*Range* 书签可在导入时准入。嵌套表、SDT、分节 sandwich,以及兄弟单元格中的跟踪修订仍失败闭合。
多单元格表格 companion 正文级 move*Range* Start/End 夹住多单元格表格时,仍与文字移动保留匹配书签。 兄弟单元格仅未跟踪纯文本 兄弟单元格在唯一受支持移动单元格旁仅可含未跟踪纯文本内容。 嵌套、SDT 与带修订兄弟路径仍失败闭合 嵌套表、SDT sandwich、分节 sandwich,以及兄弟单元格中的跟踪修订仍仅作诊断。 文档编辑器→ GitHub Release↗ Compare 为纯文本移动生成 companion 移动范围书签 Phase 0 保真:Compare / 同文档纯文本移动在导出时现会生成 companion w:move*Range* 书签,推断移动对使用确定性 rangeId/rangeName。跨分节与表格/复杂 Compare 移动仍失败闭合。多单元格、嵌套表与 SDT 导入 sandwich 留待后续切片。
导出时生成 companion 书签 准入的 Compare / 同文档纯文本推断移动会随移动包装一并导出匹配的 w:move*Range* Start/End 书签。 确定性范围身份 推断移动对获得稳定的十进制 rangeId 与 Word 风格 rangeName(例如 move0)。 复杂 Compare 路径仍失败闭合 跨分节与表格/复杂 Compare 移动仍仅作诊断;多单元格、嵌套与 SDT 导入 sandwich 留待后续工作。 文档编辑器→ GitHub Release↗ Writer 准入单单元格表格 companion 移动范围书签 Phase 0 保真:正文级 w:move*Range* Start/End 夹住一张仅含一个 w:tc、且该单元格内为受支持纯文本移动的 w:tbl 时,companion 书签可在导入时准入。多单元格兄弟单元格文字、嵌套表、SDT sandwich、分节 sandwich 与未配对标记仍失败闭合。本切片不含 Compare 移动范围生成。
单单元格表格 companion 正文级 move*Range* Start/End 夹住单单元格表格时,仍与文字移动保留匹配书签。 仅一个受支持单元格 夹住的 w:tbl 必须恰好在一个 w:tc 内含受支持的纯文本移动。 更广 sandwich 仍失败闭合 多单元格兄弟单元格文字、嵌套表、SDT、分节 sandwich、未配对标记与 Compare 生成仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 整段标记与段落分隔符修订准入仅含图片正文 Phase 0 保真:整段段落标记包装与段落分隔符相邻段落现可在唯一内容为受支持的行内 DrawingML 图片(带已解析图片 r:embed 的 wp:inline)时准入仅含图片正文。不再要求可见文本。空或畸形绘图、浮动锚点以及未解析嵌入仍失败闭合。
仅含图片正文准入 仅含受支持的 wp:inline 图片嵌入即可满足整段标记与段落分隔符正文准入,无需可见文本。 覆盖标记包装与分隔符邻居 同一仅含图片规则适用于整段标记包装与符合条件的段落分隔符合并/拆分相邻段落。 空绘图仍失败闭合 空或畸形绘图、浮动锚点与未解析嵌入仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 整段标记包装旁准入未跟踪行内图片兄弟 Phase 0 保真:整段段落标记修订正文现可在匹配的 w:ins / w:del 包装旁准入未跟踪、受支持的行内 DrawingML 图片兄弟(带已解析图片 r:embed 的 wp:inline),镜像 0.130 纯文本兄弟路径。空或畸形绘图、浮动锚点、未解析嵌入以及仅含图片的标记正文仍失败闭合。段落分隔符正文已在 0.133.0 准入行内图片。
未跟踪行内图片兄弟 已解析的 wp:inline 图片嵌入可位于匹配的标记包装旁,作为一项原子整段修订。 镜像 0.130 纯文本兄弟路径 包装旁兄弟准入与 0.130 未跟踪纯文本 run 同一形态。 仅含图片正文仍失败闭合 空或畸形绘图、浮动锚点、未解析嵌入与仅含图片的标记正文仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 整段标记修订准入行内 DrawingML 图片 Phase 0 保真:整段段落标记与段落分隔符修订正文现可准入受支持的行内 DrawingML 图片(带已解析图片 r:embed 的 wp:inline),并与可见文本并存。标记旁未跟踪绘图兄弟、浮动锚点、空或畸形绘图、未解析嵌入以及仅含图片的段落仍失败闭合。
行内 DrawingML 图片准入 已解析的 wp:inline 图片嵌入与可见文本一并作为可审阅修订内容导入。 覆盖段落分隔符正文 同一行内图片规则也适用于符合条件的段落分隔符合并/拆分相邻段落。 未跟踪兄弟与锚点仍失败闭合 未跟踪绘图兄弟、浮动锚点、未解析嵌入与仅含图片的段落仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 整段标记修订准入安全外部超链接 Phase 0 保真:整段段落标记与段落分隔符修订正文现可准入安全的关系绑定外部超链接(解析到 http/https/mailto 的 r:id),并与无关系内部链接并存。未解析或不安全目标、绘图以及移动修订正文中的关系绑定链接仍失败闭合。
安全外部超链接准入 已解析的 http/https/mailto 关系目标作为可审阅纯文本修订内容导入。 覆盖段落分隔符正文 同一外部链接规则也适用于符合条件的段落分隔符合并/拆分相邻段落。 不安全目标仍失败闭合 缺失的 r:id、javascript/file/ftp 方案、绘图与移动正文链接仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 准入跨分节 companion 移动范围书签 Phase 0 保真:受支持纯文本 moveFrom/moveTo 的 companion w:move*Range* 书签在目标侧跨分节时也可准入。把分节符夹进 sandwich、跨表格范围与未配对标记仍失败闭合。
跨分节 companion 书签 位于后续分节的目标侧仍与文字移动保留匹配的 move*Range* 书签。 单侧 sandwich 规则不变 单侧 sandwich 内的额外兄弟、表格与分节符仍失败闭合。 未配对标记仍诊断 未配对与跨表格范围标记仍报告 docx.revisions.move-range。 文档编辑器→ GitHub Release↗ Writer 整段标记修订准入未跟踪文本兄弟 Phase 0 保真:整段段落标记修订正文现可在匹配的 w:ins / w:del 包装旁纳入未跟踪纯文本兄弟 run(含软换行与既有无属性空字形集合)。空/rPr-only 未跟踪 run 仍准入。绘图与关系绑定超链接保持失败闭合;接受/拒绝仍对整段原子处理。
未跟踪纯文本兄弟 run 匹配正文包装旁的可见未跟踪文本会作为一项整段审阅导入并导出。 保留空与 rPr-only 未跟踪 run 既有空/rPr-only 未跟踪兄弟准入仍由同一纯文本 run 规则覆盖。 绘图与关系绑定链接保持失败闭合 混合段落标记正文中的绘图与关系绑定超链接仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空短日期字段 Phase 0 保真:可审阅段落分隔合并/拆分、整段段落标记与文字移动修订正文现可纳入无关系空 w:dayShort / w:monthShort / w:yearShort,以及软换行/制表符/回车符/最后渲染分页符/页码与长日期字段/连字符/超链接/书签。带属性或非空短日期字段字形保持失败闭合。
修订正文中的空短日期字段 无关系空 w:dayShort / w:monthShort / w:yearShort 字形可进入段落分隔、段落标记与移动修订正文。 与页码与长日期字段共享准入 短日期字段字形并入既有软换行、制表符、回车符、最后渲染分页符、页码、长日期字段、连字符、超链接与书签准入集合。 带属性短日期字段保持失败闭合 带属性或非空短日期字段字形与有关系形态仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空页码与日期字段 Phase 0 保真:可审阅段落分隔合并/拆分、整段段落标记与文字移动修订正文现可纳入无关系空 w:pgNum / w:dayLong / w:monthLong / w:yearLong,以及软换行/制表符/回车符/最后渲染分页符/连字符/超链接/书签。带属性或非空页码与日期字段字形保持失败闭合。
修订正文中的空页码与日期字段 无关系空 w:pgNum / w:dayLong / w:monthLong / w:yearLong 字形可进入段落分隔、段落标记与移动修订正文。 与最后渲染分页符共享准入 页码与日期字段字形并入既有软换行、制表符、回车符、最后渲染分页符、连字符、超链接与书签准入集合。 带属性页码与日期字段保持失败闭合 带属性或非空页码与日期字段字形与有关系形态仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空最后渲染分页符 Phase 0 保真:可审阅段落分隔合并/拆分、整段段落标记与文字移动修订正文现可纳入无关系空 w:lastRenderedPageBreak,以及软换行/制表符/回车符/连字符/超链接/书签。带属性或非空 w:lastRenderedPageBreak 保持失败闭合。
修订正文中的空最后渲染分页符 无关系空最后渲染分页符字形可进入段落分隔、段落标记与移动修订正文。 与回车符共享准入 最后渲染分页符并入既有软换行、制表符、回车符、连字符、超链接与书签准入集合。 带属性最后渲染分页符保持失败闭合 带属性或非空 w:lastRenderedPageBreak 字形与有关系形态仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入空回车符 Phase 0 保真:可审阅段落分隔合并/拆分、整段段落标记与文字移动修订正文现可纳入无关系空 w:cr,以及软换行/制表符/连字符/超链接/书签。带属性或非空 w:cr 保持失败闭合。
修订正文中的空回车符 无关系空回车符字形可进入段落分隔、段落标记与移动修订正文。 与制表符及连字符共享准入 回车符并入既有软换行、制表符、连字符、超链接与书签准入集合。 带属性回车符保持失败闭合 带属性或非空 w:cr 字形与有关系形态仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 修订正文准入制表符与连字符 Phase 0 保真:可审阅段落分隔合并/拆分、整段段落标记与文字移动修订正文现可纳入无关系空 w:tab、w:noBreakHyphen、w:softHyphen,以及软换行/超链接/书签。带属性或非空字形保持失败闭合。
修订正文中的制表符与连字符 无关系空制表符与连字符字形可进入段落分隔、段落标记与移动修订正文。 与软换行及链接共享准入 新字形并入既有软换行、超链接与书签准入集合。 带属性字形保持失败闭合 带属性或非空制表符/连字符字形与有关系形态仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 扩展可审阅段落分隔修订正文 Phase 0 保真:可审阅段落分隔合并/拆分修订现可在两侧纳入软换行、仅 rPr 的空 run、无关系内部超链接与无关系书签,与整段段落标记准入一致。有关系或伪造形态保持失败闭合。
更丰富的段落分隔正文 软换行、书签与无关系内部超链接可进入合并/拆分审阅。 与段落标记准入对齐 段落分隔正文规则现与整段段落标记纯文本准入集合对齐。 有关系形态保持失败闭合 有关系或伪造的链接/书签、图形与带修订包装仍仅作诊断。 文档编辑器→ GitHub Release↗ Writer 让有界多级编号修订可审阅 Phase 0 保真:含连续同级 %[ilvl]:[start]:[nfc]:[suff] 段(2-9 级常见 decimal/letter/Roman,含段落 ilvl)的无关系 numberingChange 先验导入为可审阅有序列表编号修订,支持接受/拒绝、连续分组与原生导出/重开。
多级编号先验 连续同级先验作为可审阅有序列表编号修订往返。 原子接受/拒绝 连续多级编号变更保持为一次原子列表范围审阅决策。 不支持形态保持失败闭合 不支持的格式、缺失当前级别段与畸形先验保持失败闭合。 文档编辑器→ GitHub Release↗ Writer 让节 docGrid charSpace 修订可审阅 Phase 0 保真:含有界 docGrid charSpace(有符号 OOXML 整数字距增量 × 4096)的无关系 sectPrChange 先验(可与 type/linePitch 组合)经 documentGrid 导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
文档网格字符间距 有界 charSpace 先验作为可审阅 section-formatting 快照在 documentGrid 上往返。 实时修订跟踪 在修订跟踪开启时编辑节 documentGrid charSpace 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 越界/未知属性保持失败闭合;printerSettings 保持永久不透明。 文档编辑器→ GitHub Release↗ Writer 让节 pgNumType 章节字段可审阅 Phase 0 保真:含有界 pgNumType chapStyle(1-9)和/或 chapSep(hyphen/period/colon/emDash/enDash)的无关系 sectPrChange 先验(可与 fmt/start 组合)导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。printerSettings 保持永久不透明。
章节页码字段 有界 chapStyle/chapSep 先验作为可审阅 section-formatting 快照在 pgNumType 上往返。 实时修订跟踪 在修订跟踪开启时编辑节 pgNumType 章节字段会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 printerSettings 保持永久不透明(CT_Rel/r:id);未知 pgNumType 属性/值保持失败闭合。 文档编辑器→ GitHub Release↗ Writer 让节 pgBorders 修订可审阅 Phase 0 保真:含有界 pgBorders(可选 display/offsetFrom/zOrder 与有序 top/left/bottom/right 边框)的无关系 sectPrChange 先验经 pageBorders 导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节页边框 有界 pgBorders 先验经 pageBorders 作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 pageBorders 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性/值与嵌套修订子元素保持失败闭合;不透明节夹具仍为 printerSettings。 文档编辑器→ GitHub Release↗ Writer 让节 type 修订可审阅 Phase 0 保真:含已知 type(nextPage/nextColumn/continuous/evenPage/oddPage)的无关系 sectPrChange 先验经 breakAfter 导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节分隔类型 已知 type 先验经 breakAfter 作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 breakAfter 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性/值保持失败闭合;不透明节夹具仍为 pgBorders。 文档编辑器→ GitHub Release↗ Writer 让节 endnotePr 修订可审阅 Phase 0 保真:含有界空或 pos(sectEnd/docEnd)/numFmt/numStart/numRestart endnotePr 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节尾注属性 有界 endnotePr 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 endnotePr 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知子元素/属性保持失败闭合;不透明节夹具仍为 type。 文档编辑器→ GitHub Release↗ Writer 让节 footnotePr 修订可审阅 Phase 0 保真:含有界空或 pos/numFmt/numStart/numRestart footnotePr 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节脚注属性 有界 footnotePr 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 footnotePr 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知子元素/属性保持失败闭合;不透明节夹具仍为 endnotePr。 文档编辑器→ GitHub Release↗ Writer 让节 bidi 修订可审阅 Phase 0 保真:含空或 onOff bidi 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节双向布局 空或 onOff bidi 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 bidi 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性保持失败闭合;不透明节夹具仍为 footnotePr。 文档编辑器→ GitHub Release↗ Writer 让节 textDirection 修订可审阅 Phase 0 保真:含已知 textDirection(lrTb/tbRl/btLr/lrTbV/tbRlV/tbLrV)的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节文字方向 有界 textDirection 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 textDirection 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性/值保持失败闭合;不透明节夹具仍为 bidi。 文档编辑器→ GitHub Release↗ Writer 让节 noEndnote 修订可审阅 Phase 0 保真:含空或 onOff noEndnote 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节尾注抑制 空或 onOff noEndnote 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 noEndnote 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性保持失败闭合;不透明节夹具仍为 textDirection。 文档编辑器→ GitHub Release↗ Writer 让节垂直对齐 vAlign 修订可审阅 Phase 0 保真:含 vAlign(top/center/both/bottom)的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节垂直对齐 有界 vAlign 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 vAlign 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性/值保持失败闭合;不透明节夹具仍为 noEndnote。 文档编辑器→ GitHub Release↗ Writer 让节表单保护 formProt 修订可审阅 Phase 0 保真:含 onOff formProt 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节表单保护 onOff formProt 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 formProt 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性保持失败闭合;不透明节夹具仍为 vAlign。 文档编辑器→ GitHub Release↗ Writer 让节页码 pgNumType 修订可审阅 Phase 0 保真:含有界 pgNumType(fmt/start)的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节页码 有界 pgNumType 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 pgNumType 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 chapStyle/chapSep 保持失败闭合;不透明节夹具仍为 formProt。 文档编辑器→ GitHub Release↗ Writer 让节行号 lnNumType 修订可审阅 Phase 0 保真:含有界 lnNumType(countBy/start/distance/restart)的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
节行号 有界 lnNumType 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 lnNumType 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知属性保持失败闭合;不透明节夹具仍为 pgNumType。 文档编辑器→ GitHub Release↗ Writer 让行 tblCellSpacing 修订可审阅 Phase 0 保真:含 tblCellSpacing(CT_TblWidth)的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。CT_TrPrBase 覆盖已完成。
行单元格间距 tblCellSpacing 先验作为可审阅 row-formatting 首选宽度快照往返。 实时修订跟踪 在修订跟踪开启时编辑行 tblCellSpacing 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 畸形宽度保持失败闭合;不透明行夹具仍为嵌套 ins。剩余 ins/del 修订身份仍不透明。 文档编辑器→ GitHub Release↗ Writer 让行 divId 修订可审阅 Phase 0 保真:含有界非负 divId 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行分区 ID 有界 divId 先验作为可审阅 row-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑行 divId 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 畸形 divId 保持失败闭合;不透明行夹具仍为 tblCellSpacing。嵌套 cellIns/cellDel 仍不透明。 文档编辑器→ GitHub Release↗ Writer 让单元格 gridSpan 修订可审阅 Phase 0 保真:含有界正整数 gridSpan 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
网格跨度 有界 gridSpan 先验作为可审阅 cell-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑单元格 gridSpan 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 缺失或非正值保持失败闭合;不透明单元格夹具仍为 cellIns。 文档编辑器→ GitHub Release↗ Writer 让单元格 vMerge 修订可审阅 Phase 0 保真:含有界 vMerge(restart / continue)的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
垂直合并 有界 vMerge 先验作为可审阅 cell-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑单元格 vMerge 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知合并值保持失败闭合;不透明单元格夹具仍为 gridSpan。 文档编辑器→ GitHub Release↗ Writer 让单元格 hMerge 修订可审阅 Phase 0 保真:含有界 hMerge(restart / continue)的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
水平合并 有界 hMerge 先验作为可审阅 cell-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑单元格 hMerge 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知合并值保持失败闭合;不透明单元格夹具仍为 vMerge。 文档编辑器→ GitHub Release↗ Writer 让节文档网格 docGrid 修订可审阅 Phase 0 保真:含有界 docGrid(type + linePitch)的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
文档网格 有界 docGrid 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑节 docGrid 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 未知 docGrid 属性保持失败闭合;不透明节夹具仍为 lnNumType。 文档编辑器→ GitHub Release↗ Writer 让单元格 tcBorders 修订可审阅 Phase 0 保真:含直接色 tcBorders 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格边框 直接色 tcBorders 先验作为可审阅 cell-formatting 边框快照往返。 实时修订跟踪 在修订跟踪开启时编辑单元格边框会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 主题绑定或畸形边框保持失败闭合或不透明;不透明单元格夹具仍为 hMerge。 文档编辑器→ GitHub Release↗ Writer 让单元格 cnfStyle 修订可审阅 Phase 0 保真:含无关系 cnfStyle 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格条件格式位掩码 无关系 12 位 cnfStyle 先验作为可审阅 cell-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑单元格 cnfStyle 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格属性集仍为不透明元数据或失败闭合;不透明单元格夹具仍为 hMerge。 文档编辑器→ GitHub Release↗ Writer 让行 cnfStyle 修订可审阅 Phase 0 保真:含无关系 cnfStyle 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行条件格式位掩码 无关系 12 位 cnfStyle 先验作为可审阅 row-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑行 cnfStyle 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的行属性集仍为不透明元数据或失败闭合;不透明行夹具仍为 divId。单元格 cnfStyle 在 0.102.0 起可审阅。 文档编辑器→ GitHub Release↗ Writer 让不等宽分栏修订可审阅 Phase 0 保真:含不等宽 cols 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
不等宽分栏 带有限 col 子元素的不等宽 cols 先验作为可审阅 section-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑自定义分栏会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的节属性集仍为不透明元数据或失败闭合;不透明节夹具仍为 docGrid。 文档编辑器→ GitHub Release↗ Writer 让表 tblStyleRowBandSize 修订可审阅 Phase 0 保真:含无关系 tblStyleRowBandSize 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行带大小 无关系 tblStyleRowBandSize 先验作为可审阅 table-formatting rowBandSize 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 rowBandSize 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblPrException。 文档编辑器→ GitHub Release↗ Writer 让表 tblStyleColBandSize 修订可审阅 Phase 0 保真:含无关系 tblStyleColBandSize 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
列带大小 无关系 tblStyleColBandSize 先验作为可审阅 table-formatting colBandSize 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 colBandSize 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具当时为 tblStyleRowBandSize(0.99.0 起改为 tblPrException)。 文档编辑器→ GitHub Release↗ Writer 让表 tblDescription 修订可审阅 Phase 0 保真:含无关系 tblDescription 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表描述 无关系 tblDescription 先验作为可审阅 table-formatting description 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 description 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具当时为 tblStyleColBandSize(0.98.0 起改为 tblStyleRowBandSize)。 文档编辑器→ GitHub Release↗ Writer 让表 tblCaption 修订可审阅 Phase 0 保真:含无关系 tblCaption 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表题注 无关系 tblCaption 先验作为可审阅 table-formatting caption 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 caption 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具当时为 tblDescription(0.97.0 起改为 tblStyleColBandSize)。 文档编辑器→ GitHub Release↗ Writer 让表 tblBorders 修订可审阅 Phase 0 保真:含直接色 tblBorders 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表边框 直接色 tblBorders 先验作为可审阅 table-formatting borders 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 borders 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具当时为 tblCaption(0.96.0 起改为 tblDescription)。 文档编辑器→ GitHub Release↗ Writer 让表 tblCellSpacing 修订可审阅 Phase 0 保真:含 dxa tblCellSpacing 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表单元格间距 dxa tblCellSpacing 先验作为可审阅 table-formatting cellSpacing 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 cellSpacing 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblCaption。 文档编辑器→ GitHub Release↗ Writer 让表 tblStyle 修订可审阅 Phase 0 保真:含 tblStyle 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表样式 ID 无关系的 tblStyle 先验作为可审阅 table-formatting styleId 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 styleId 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblCellSpacing。 文档编辑器→ GitHub Release↗ Writer 让表 tblOverlap 修订可审阅 Phase 0 保真:含 tblOverlap 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表重叠策略 无关系的 tblOverlap 先验(never/overlap)作为可审阅 table-formatting 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 overlap 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblStyle。 文档编辑器→ GitHub Release↗ Writer 让表 tblLook 修订可审阅 Phase 0 保真:含 tblLook 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表外观标志 无关系的 tblLook 先验作为可审阅 table-formatting look 快照往返。 实时修订跟踪 在修订跟踪开启时编辑表 look 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblOverlap。 文档编辑器→ GitHub Release↗ Writer 让节 rtlGutter 修订可审阅 Phase 0 保真:含 rtlGutter 的无关系 sectPrChange 先验导入为 section-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
RTL 装订线 无关系的 rtlGutter 先验作为可审阅 section-formatting 往返,并映射到页边距 gutterOnRight。 实时修订跟踪 在修订跟踪开启时编辑 pageMargins.gutterOnRight 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的节属性集仍为不透明元数据或失败闭合;不透明节夹具仍为不等宽 cols。 文档编辑器→ GitHub Release↗ Writer 让表纯色填充修订可审阅 Phase 0 保真:含纯色 shd 的无关系 tblPrChange 先验导入为 table-formatting(fill),支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表纯色填充 无关系的纯色 shd 先验作为可审阅 table-formatting 往返,并覆盖当前表导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-table-fill 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表/单元格/行属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblLook。 文档编辑器→ GitHub Release↗ Writer 让节 titlePg 修订可审阅 Phase 0 保真:含 titlePg 的无关系 sectPrChange 先验导入为 section-formatting(differentFirstPage),支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
首页不同 无关系的 titlePg 先验作为可审阅 section-formatting 往返,并覆盖当前节导出。 实时修订跟踪 在修订跟踪开启时编辑 pageChrome.differentFirstPage 会生成待审阅的 section-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的节属性集仍为不透明元数据或失败闭合;不透明节夹具仍为不等宽 cols。 文档编辑器→ GitHub Release↗ Writer 让表 bidiVisual 修订可审阅 Phase 0 保真:含 bidiVisual 的无关系 tblPrChange 先验导入为 table-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
表双向视觉 无关系的 bidiVisual 先验作为可审阅 table-formatting 往返,并覆盖当前表导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-table-bidi-visual 会生成待审阅的 table-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的表/单元格/行属性集仍为不透明元数据或失败闭合;不透明表夹具仍为 tblLook。 文档编辑器→ GitHub Release↗ Writer 让行 wAfter 修订可审阅 Phase 0 保真:含 wAfter 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行后置宽度 无关系的 wAfter 先验作为可审阅 row-formatting 往返,并覆盖当前行导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-row-width-after 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明行夹具已从 wAfter 迁至 cnfStyle。 文档编辑器→ GitHub Release↗ Writer 让行 wBefore 修订可审阅 Phase 0 保真:含 wBefore 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行前置宽度 无关系的 wBefore 先验作为可审阅 row-formatting 往返,并覆盖当前行导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-row-width-before 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明行夹具已从 wBefore 迁至 wAfter。 文档编辑器→ GitHub Release↗ Writer 让行 gridAfter 修订可审阅 Phase 0 保真:含 gridAfter 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行后置网格 无关系的 gridAfter 先验作为可审阅 row-formatting 往返,并覆盖当前行导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-row-grid-after 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明行夹具已从 gridAfter 迁至 wBefore。 文档编辑器→ GitHub Release↗ Writer 让行 gridBefore 修订可审阅 Phase 0 保真:含 gridBefore 的无关系 trPrChange 先验导入为 row-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
行前置网格 无关系的 gridBefore 先验作为可审阅 row-formatting 往返,并覆盖当前行导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-row-grid-before 会生成待审阅的 row-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明行夹具已从 gridBefore 迁至 gridAfter。 文档编辑器→ GitHub Release↗ Writer 让单元格 hideMark 修订可审阅 Phase 0 保真:含 hideMark 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格隐藏标记 无关系的 hideMark 先验作为可审阅 cell-formatting 往返,并覆盖当前单元格导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-cell-hide-mark 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明单元格夹具已从 hideMark 迁至 cnfStyle。 文档编辑器→ GitHub Release↗ Writer 让单元格 tcFitText 修订可审阅 Phase 0 保真:含 tcFitText 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格适应文字 无关系的 tcFitText 先验作为可审阅 cell-formatting 往返,并覆盖当前单元格导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-cell-fit-text 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明单元格夹具已从 tcFitText 迁至 hideMark。 文档编辑器→ GitHub Release↗ Writer 让单元格 textDirection 修订可审阅 Phase 0 保真:含 textDirection 的无关系 tcPrChange 先验导入为 cell-formatting,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格文字方向 支持的 ST_TextDirection 值(lrTb、tbRl、btLr、lrTbV、tbRlV、tbLrV)作为可审阅 cell-formatting 往返,并覆盖当前单元格导出。 实时修订跟踪 在修订跟踪开启时编辑 data-office-cell-text-direction 会生成待审阅的 cell-formatting 修订,接受/拒绝可还原。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;不透明单元格夹具已从 textDirection 迁至 tcFitText。 文档编辑器→ GitHub Release↗ 原生引擎说明→ Writer 深化可审阅的单元格与行属性修订 Phase 0 保真:可审阅的 tcW / noWrap 单元格格式修订,以及 hidden / jc 行格式修订,支持接受/拒绝、实时修订跟踪与原生 DOCX 导出。
单元格宽度与换行 含 tcW(auto/dxa/pct)或 noWrap 的无关系 tcPrChange 先验导入为 cell-formatting;实时 colwidth 与 noWrap 编辑可跟踪并原生导出。 行隐藏与对齐 含 hidden 或 jc(left/center/right)的 trPrChange 先验可作为 row-formatting 审阅,并覆盖当前行属性的导出。 不透明路径保持失败闭合 更广的单元格/行属性集仍为不透明元数据或失败闭合;夹具已从已接纳先验迁至 textDirection 与 gridBefore。 文档编辑器→ GitHub Release↗ 原生引擎说明→ Writer 无破坏修订深化,PDF 导出补齐可搜索矢量文本 Phase 0 保真:可审阅的表格/行/单元格/节属性修订、更丰富的段落标记与移动伴随标记、不透明浮动/公式保留,以及 Latin(可选 CJK)可搜索 PDF 矢量文本与结构引导。
可审阅的属性修订 tblPrChange、trPrChange、tcPrChange 与 sectPrChange 子集(含布局、单元格边距、纸张来源与等宽分栏)支持接受/拒绝,并覆盖实时修订跟踪。 段落标记与移动保真 多包装标记正文、软换行、内部超链接、书签、空 rPr 兄弟、移动范围伴随标记,以及合格的段落断裂合并/拆分保持可审阅。 可搜索 PDF 矢量文本 已测量 Latin 清除为 Helvetica 矢量;宿主可注册 CJK TrueType;标题/语言/标题大纲引导已交付,但不宣称完整 PDF/UA。 文档编辑器→ GitHub Release↗ 原生引擎说明→ 五编辑器共享同一 WPS 快捷键矩阵(103 ACL / 78 视觉) Writer、Spreadsheet、Presentation、Markdown 与 PDF 共用同一发布叙事:对齐 WPS 的快捷键、功能区广告,以及共享操作器矩阵上的专用 ACL 与响应式视觉证据。
Writer 段落与域快捷键 段落移动、分散对齐、项目符号、缩进族、双删除线、正文样式、大小写循环、清除格式以及域锁定/取消链接进入矩阵。 Presentation 与 Spreadsheet 界面 覆盖新建/复制/删除幻灯片、备注开关、组合广告、功能区折叠、工作簿视图开关以及工作表 PageUp/PageDown 导航。 Markdown 与 PDF 键盘证据 Markdown 加粗/斜体/链接以及 PDF 缩放、翻页和 Ctrl+F 搜索焦点均配有 ACL 与桌面/紧凑视觉证据。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Writer WPS 数字字段补齐响应式视觉证据 共享操作器现在公开 61 个 ACL 和 56 个视觉契约,深入覆盖 Writer 字段结果、指令、标签与焦点证据。
实时 WPS 字段结果 PAGE、NUMPAGES、SECTION 和 PAGEREF 在测量页面上解析为预期的罗马、字母和序数显示。 原生指令与可访问标签 MERGEFORMAT 指令、书签目标和本地化 ARIA 标签在 Writer DOM 投影中保持可检查。 响应式焦点证据 桌面与紧凑布局保持单页投影稳定,F9 刷新后焦点回到文档编辑器,且无浏览器错误。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Writer WPS 版式与字体网格对齐补齐视觉证据 共享操作器现在公开 61 个 ACL 和 55 个视觉契约,深入覆盖 Writer 分页、字体、网格与混合脚本证据。
WPS 页面版式 桌面与紧凑布局检查导入的 A4 纵向元数据、自动行距指标、表格流和单页分页。 字体与文档网格 拉丁/CJK 行高因子和 WPS 文档网格行距可通过 Writer DOM 投影检查。 混合脚本保真度 RTL 段落、阿拉伯语/希伯来语/CJK/拉丁字体槽以及粗体/斜体混合文本保留 WPS 对齐指标,且无浏览器错误。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Writer WPS 快捷键补齐桌面与紧凑视觉证据 共享操作器现在公开 61 个 ACL 和 54 个视觉契约,深入覆盖 Writer 格式、审阅、菜单与焦点证据。
WPS 格式快捷键 两种布局均覆盖格式复制/粘贴、互斥大小写效果、单步撤销、段落对齐/行距和标题样式。 可访问的命令发现 大小写菜单项公开快捷键,Escape 恢复菜单触发器焦点,拼写/审阅快捷键保留正文焦点。 本机 WPS 与浏览器证据 WPS Writer COM 探针在 12.1.0.21541 版本运行;A3S Test 1.0.1 的快捷键 ACL 通过,控制台和页面错误证据均为空。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 从上方复制快捷键补齐 WPS 证据 共享操作器现在公开 61 个 ACL 和 53 个视觉契约,深入覆盖从上方复制、样式、撤销与焦点证据。
WPS 复制快捷键 Ctrl+' 从活动网格复制源公式,Ctrl+Shift+' 复制其计算值。 样式与撤销对齐 从上方复制保留目标样式,支持单步撤销,并在每次操作后恢复网格焦点。 浏览器证据 基于 Commander 的视觉门禁通过桌面与紧凑布局;A3S Test 1.0.1 的 ACL 场景通过,控制台和页面错误证据均为空。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet WPS 字体快捷键与颜色复位补齐视觉证据 共享操作器现在公开 60 个 ACL 和 52 个视觉契约,深入覆盖字体快捷键、颜色复位与焦点恢复证据。
WPS 字体快捷键 Ctrl+2、Ctrl+3 和 Ctrl+4 通过统一的 aria-keyshortcuts 元数据保持可发现,并从活动网格执行。 直接颜色复位 自动颜色与无填充是显式操作,可清除直接样式、保留选区并将焦点返回网格。 浏览器证据 基于 Commander 的视觉门禁通过桌面与紧凑布局;A3S Test 1.0.1 的两个 ACL 场景全部通过,控制台和页面错误证据均为空。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 超链接安全与下划线对齐成为显式证据 共享操作器现在公开 60 个 ACL 和 51 个视觉契约,深入覆盖超链接、下划线与外壳资源证据。
超链接安全 对话框拒绝 javascript URL、保护隐藏工作表、规范化 HTTPS 地址,并在移除后将焦点返回网格。 下划线对齐 高级下划线样式在功能区菜单、单元格格式对话框、键盘快捷键和撤销历史之间保持一致。 浏览器证据 4 个 Spreadsheet 视觉用例在桌面与紧凑布局通过,并完成无页面错误或控制台消息的 A3S Test 1.0.1 实时超链接会话;共享外壳资源消除了 logo 404。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 手机端查找与工作表命名进入 WPS 证据矩阵 共享操作器现在公开 58 个 ACL 和 49 个视觉契约,深入覆盖手机端查找与工作表命名证据。
手机端查找 触控尺寸的查找控件显示匹配数量、选中匹配单元格,并在 Escape 后恢复网格焦点。 工作表命名 无效工作表名称提供行内反馈;取消操作安全,关闭菜单后选项触发器恢复焦点。 浏览器证据 4 个 Spreadsheet 手机端视觉用例在桌面与紧凑布局通过,并完成无页面错误或控制台消息的 A3S Test 1.0.1 实时查找会话。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 手机端流程进入 WPS 证据矩阵 共享操作器现在公开 56 个 ACL 和 47 个视觉契约,深入覆盖手机端任务面板与上下文菜单证据。
手机端任务面板 数据透视表面板保持模态焦点隔离,支持正向与反向键盘遍历,并在 Escape 后恢复功能区触发器焦点。 手机端上下文菜单 触控尺寸的选区菜单聚焦首个操作,并在关闭后将焦点恢复到 Spreadsheet 网格。 浏览器证据 4 个 Spreadsheet 手机端视觉用例在桌面与紧凑布局通过,并完成无页面错误或控制台消息的 A3S Test 1.0.1 实时任务面板会话。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Presentation 手机端审阅进入 WPS 证据矩阵 共享操作器现在公开 54 个 ACL 和 45 个视觉契约,深入覆盖手机端图表与批注证据。
手机端图表面板 图表编辑保持模态焦点隔离,回滚无效草稿,并在关闭后恢复选中图表触发器焦点。 手机端批注审阅 批注审阅让手机编辑器保持模态隔离,干净取消草稿,并在关闭后恢复原始触发器焦点。 浏览器证据 4 个 Presentation 手机端视觉用例在桌面与紧凑布局通过,并完成无页面错误的 A3S Test 1.0.1 实时审阅。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 外观编辑进入 WPS 证据矩阵 共享操作器现在公开 52 个 ACL 和 43 个视觉契约,深入覆盖边框与填充证据。
原生边框控件 斜上与斜下边框可通过“设置单元格格式”编辑、撤销并适配紧凑布局。 渐变与图案填充 线性/路径渐变与 17 种原生图案样式成为显式契约,支持可编辑对话框与撤销。 浏览器证据 10 个 Spreadsheet 视觉用例在桌面与紧凑布局通过,并完成无页面错误的有界路径渐变实时编辑。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Spreadsheet 排序进入 WPS 一等证据矩阵 共享操作器现在公开 49 个 ACL 和 40 个视觉契约,深入覆盖排序与自动筛选证据。
排序语义 外观/颜色、自定义序列、表格所有者、左右、部分范围和简体中文文本排序现在都是显式契约。 筛选安全范围 所有者范围排序会重新应用自动筛选条件,并在响应式布局中保持撤销/焦点行为。 浏览器证据 14 个 Spreadsheet 视觉用例在桌面与紧凑布局通过,并完成有界 A3S Test 1.0.1 实时排序会话。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Writer 排版与审阅路径进入 WPS 矩阵 共享操作器现在公开 43 个 ACL 和 34 个视觉契约,深入覆盖 Writer 字体、隐藏文字、内容控件与审阅证据。
WPS 排版路径 字符位置、缩放、间距、着重号、隐藏文字和 OpenType 控件现在都是 Writer 矩阵的一等契约。 安全审阅编辑 受控审阅冲突、内容控件、成对移动修订和手机端修订路径与既有 WPS 套件一起接受检查。 实时焦点证据 Writer 桌面与紧凑布局共 41 个视觉用例通过,另有 1 个平台条件用例跳过;实时字体对话框类型化编辑通过且无页面错误。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ WPS 证据矩阵深入覆盖 Spreadsheet 等编辑器 A3S Test 现在为五种编辑器清晰列出 33 个 ACL 和 24 个视觉契约,并提供实时 Spreadsheet 焦点证据。
更深入的 Spreadsheet 路径 自动求和、选择性粘贴、条件格式、日期时间、单元格样式、富文本、表格汇总、方向/可见性和直接颜色快捷键现在都进入矩阵契约。 跨编辑器回归 Presentation IME/大窗口与 PDF 大文件 ACL 加入 Writer、Markdown 以及既有 Spreadsheet 流程。 真实浏览器证据 16 个 Spreadsheet 视觉测试在桌面和紧凑布局通过;有界 A3S Test 1.0.1 会话在类型化编辑后恢复了网格选区。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Windows A3S Test 派发保持原生且类型化 基于 WPS 参考的操作器现在使用原生 Windows CDP 适配器和 fail-closed 能力检查运行五种编辑器证据矩阵。
跨编辑器覆盖 提供 `--cdp-port` 后会编译 `.a3s-test/office-ops` 下的原生 `.exe` 适配器,避免选择器和 action JSON 进入 `.cmd` 解析。 Windows 类型化派发 `doctor --json` 只有在兼容的 A3S Test 能力探测通过后才报告 CUA certification;过时的 0.x 二进制仍会 fail-closed。 浏览器门禁 fail-closed 通过 Office CLI 完成了有界的 `start → observe → 一次 action → observe → finish` Writer 实时会话。 运行五种编辑器矩阵→ GitHub Release↗ CLI 参考→ Writer WPS 证据统一进入完整矩阵 已有的 WPS 快捷键、版式对齐和字体/网格套件现在与其他编辑器共享同一个声明式操作矩阵。
Writer 契约不再隐藏 `check all`、`gate writer` 和 `plan writer --json` 现在包含此前只能通过独立脚本运行的快捷键、版式和字体/网格 ACL。 夹具清单显式化 Writer 清单会在智能体选择交互路径前报告全部 WPS 版式和字体矩阵 DOCX 夹具。 计划携带完整元数据 机器可读计划现在携带视觉、ACL、夹具和智能体元数据,同时保留 observe → 一次动作 → observe 边界。 运行 Writer 矩阵→ GitHub Release↗ CLI 参考→ 五种编辑器共享一份类型化工作流清单 Commander 操作 CLI 现在可以输出确定性的 JSON 工作流清单,让 Codex 无需临时拼接各编辑器的 shell 条件即可执行 UI/UX 证据流程。
矩阵驱动命令 `plan all --json` 为 Writer、Spreadsheet、Presentation、Markdown 和 PDF 展开夹具、ACL、A3S Test 门禁、视觉项目和有界智能体会话。 桌面与紧凑视口证据 每个视觉命令同时携带 desktop-1280 与 compact-768 项目,主交互权威仍然是 A3S Test。 WPS 参考保持有界 Writer 清单包含隔离的 WPS COM UI 与字段探针;锁定驱动不支持时,Windows CUA 仍保持 fail-closed。 运行编辑器工作流清单→ GitHub Release↗ CLI 参考→ WPS UI 参考升级为类型化证据 类型化 Commander 探针现在可以捕获隔离的 WPS Writer 外壳与字段命令清单,让 UI 决策基于本机实际版本。
三个明确 profile `shell`、`fields` 和 `all` 让日常 UX 复核保持有界,并在需要时保留完整命令清单。 COM 生命周期可控 每次探针启动一个隐藏的 WPS Writer 实例,记录版本、窗口几何、Ribbon/状态栏和原生命令 ID,然后只关闭该实例。 证据边界保持诚实 A3S Test Web/CDP 仍是浏览器 UI 契约;锁定的 Windows CUA profile 仍不支持,COM 结果也不是 CI 依赖。 运行 WPS UI 探针→ 查看字段命令证据→ GitHub Release↗ Writer 新增类型化字段设置 有界字段设置弹窗现在可以插入和编辑兼容 WPS 的页码、节号与书签目标页码格式,并配套响应式 A3S Test 证据。
一条类型化插入/编辑路径 页码与节号数字格式、日期/时间预设、书签目标、超链接和 MERGEFORMAT 保留共享同一个受控弹窗与一次可撤销文档更新。 原生 WPS 格式保持诚实 导入的未知时间格式在用户修改前保持源格式;不支持的开关继续缓存并诊断,不被近似伪装。 A3S Test 覆盖桌面与手机 Web/CDP 场景覆盖 1280px 与 390px 下的两步紧凑功能区发现、预览、F9 刷新、焦点恢复、截图、可访问性及空控制台/页面错误证据。 阅读字段设置指南→ 运行常用 WPS 字段探针→ GitHub Release↗ Writer 字段补齐有界 WPS 数字开关对齐 常用 PAGE、NUMPAGES、SECTION 与 PAGEREF 字段现在保留可安全求值的 WPS 数字开关,并配套类型化 COM 探针与浏览器编辑器证据。
开关保持类型化且有界 显式解析 ROMAN、ALPHABETIC、Ordinal、超链接与 MERGEFORMAT 组合;未知或格式错误的开关保持缓存并进入诊断。 WPS COM 输出可检查 Commander CLI 将本机 WPS 字段指令与版本写入精确 DOCX 夹具,不把 COM 变成运行时或 CI 依赖。 A3S Test 证明编辑器路径 数字字段 ACL 检查可见结果、焦点、截图、可访问性及空控制台/页面错误诊断;Windows CUA 继续失败即关闭。 阅读字段指南→ 运行 WPS 字段探针→ GitHub Release↗ Writer 连接符补齐 WPS 类型化形状对齐 WPS 连接符形状类型 32、33、37 现在在 Writer 功能区、实时 SVG 与 DOCX 往返之间共享有界的直线、肘形和曲线模型。
一个连接符类型控件 直线、肘形和曲线值通过上下文功能区编辑,并由撤销/重做与紧凑布局保持一致。 原生几何保持类型化 WPS VML 按 o:spt 值导入;DOCX 导出使用直线、路由自定义几何或二次曲线几何,不虚构任意路由点编辑。 A3S Test 证明边界 WPS 类型矩阵保留截图、可访问性快照、空控制台/页面错误诊断及不同 SVG 检查;Windows CUA 继续失败即关闭。 阅读连接符类型指南→ 运行 WPS 连接符 A3S Test→ GitHub Release↗ A3S Test 门禁成为日常编辑器契约 五大编辑器本地矩阵现在覆盖桌面与手机宽度下的可发现工作流,并将浏览器/CDP 证据与 Windows CUA 失败即关闭能力明确分离。
稳定的键盘优先发现路径 模板卡片在激活前先获得焦点,折叠线下的表格、演示、Markdown 与手机工作流因此与键盘用户使用相同的可见性行为。 PDF 导出兼容较慢观察器 Blob URL 会保持足够长时间供 Web/CDP 下载观察器读取,同时 PDF ACL 证明抽取后所有页面操作仍保持可用。 证据具备类型与可审计性 A3S Test 保留截图、可访问性快照、空控制台/页面错误诊断及明确的 standalone 驱动分类;精确 PDF 字节内容继续由补充 Playwright 契约覆盖。 运行 A3S Test 编辑器矩阵→ 查看 PDF 页面组织→ GitHub Release↗ Writer 连接符补齐 WPS 箭头样式对齐 直线连接符现在可以把无箭头、三角、隐形、菱形、圆形和开放端点箭头意图穿过响应式 Writer 功能区与 DOCX 往返。
一个类型化箭头样式模型 连接符功能区、实时 SVG 标记、紧凑控件、撤销/重做、VML 导入和 DrawingML headEnd/tailEnd 导出共享六种有界值。 Windows COM 3/4 参考 本机 WPS 12.0 探针在有界 COM 配对下生成 VML startarrow=open、endarrow=classic;classic 重新打开为类型化隐形箭头。 A3S Test 证据保持主导 真实 Windows CDP 运行覆盖创建与 WPS 导入并保留截图、可访问性快照及空控制台/页面错误诊断;锁定的 CUA 矩阵在 Windows 上继续失败即关闭。 阅读连接符箭头样式指南→ 查看 A3S Test 与 CUA 流程→ GitHub Release↗ Writer 连接符补齐 WPS 线型对齐 直线连接符现在可以把 WPS 的实线、虚线、点线和点划线意图穿过响应式 Writer 功能区与 DOCX 往返。
一个类型化线型模型 连接符功能区、实时 SVG、紧凑控件、撤销/重做、VML 导入和 DrawingML a:prstDash 导出共享实线、虚线、点线和点划线值。 记录 WPS COM 证据 本机 WPS 12.0 探针记录原生虚线 Shapes.AddConnector 的 DashStyle=4;不支持的长尾线型会失败即归一化。 UI/UX 证据保持深入 A3S Test ACL 覆盖创建与 WPS 导入并保留截图、可访问性快照及空控制台/页面错误诊断;Playwright 覆盖桌面与紧凑视口。 阅读连接符线型指南→ 查看 A3S Test 流程→ GitHub Release↗ Windows 编辑器运行保持确定性 本地 A3S Test 流程现在可以可靠完成锁定版本的 CDP 运行,并把响应式 Writer 操作发现纳入用户可见契约。
直接 CDP 生命周期 Windows 适配器以请求的 CDP 端口直接调用独立浏览器,并在进程退出时完成,避免分离 session 端口轮询和继承 stdio 导致的挂起。 测试响应式操作发现 Writer 文本框 ACL 会在语义点击前观察桌面工具栏溢出并滚动手机模板页面,对齐用户实际能够触达的控件。 证据保持有界 四个桌面/手机场景均通过并保留截图、可访问性、控制台和页面错误证据;锁定的 0.10.0 矩阵仍如实将 Windows CUA 标记为 unsupported。 阅读编辑器自动化指南→ 查看响应式 Writer 契约→ GitHub Release↗ A3S Test 成为编辑器交互主契约 有界的 Commander 操作器现在通过同一份矩阵驱动确定性的编辑器 ACL、探索式智能体会话、WPS 参考采集和补充视觉证据。
声明式五编辑器 CLI Commander 子命令统一路由夹具、ACL 检查与执行、视觉基线、WPS COM 探针和有界智能体生命周期,不再依赖 switch/if-else 解析器。 已观测的 Writer 连接符编辑 A3S Test 智能体与 ACL 创建直线连接符、打开上下文功能区、将宽度从 120 mm 改为 150 mm,并保留截图、可访问性、控制台和页面错误证据。 如实报告 CUA 能力 锁定的 CUA Driver 0.10.0 能力矩阵将 Windows GUI profile 如实标记为 unsupported;浏览器/CDP 证据与 WPS 原生 GUI 结论分开,WPS COM 探针仍是明确的参考流程。 阅读编辑器自动化指南→ 查看连接符边界→ GitHub Release↗ Writer 明确记录 WPS 连接符边界 传统 VML 连接符现在作为兼容性记录诊断,不会被误认为可编辑文本框或图片。
COM 证据决定边界 本机 WPS 12.0 探针记录 Shapes.AddConnector 为带 o:spt="32" 和 #_x0000_t32 的 VML v:shape,而不是带文字主体的 wps:wsp。 失败即明确诊断 docx.connectors 会报告可编辑 Writer 模型尚未负责的端点、路由、箭头和浮动锚点语义;只有连接符的 pict 容器也不会再触发泛化图片警告。 有界的 UI 契约 确定性的 DOCX 夹具、聚焦 Rstest 和本地 A3S Test ACL 证明导入后 Writer 仍可用、不创建文本框节点,并捕获可访问性与浏览器诊断。 阅读连接符边界→ 查看文本框模型→ GitHub Release↗ Writer 文本框与 WPS 使用同一套有界形状语义 五种有界形状现在可以穿过 WPS 导入、结构化编辑器模型、响应式控件、撤销/重做和原生 DOCX 导出。
五种形状,一个类型化状态 矩形、圆角矩形、椭圆、菱形和三角形共享一个有界模型。上下文功能区、实时页面、预览、PDF 捕获和 DOCX 几何保持一致。 真实 WPS 导入后仍可编辑 独立的 WPS mc:AlternateContent 文本形状保留位置、填充、轮廓、内边距、垂直锚点、文字和绘图身份。混合段落与连接符继续作为明确诊断边界。 深度 UI/UX 证据,而不是功能堆砌 桌面与紧凑浏览器流程逐一测试每种形状、上下文发现性、焦点、可访问性、视口容纳、干净诊断以及 WPS 导入后的撤销/重做。本地 A3S Test ACL 记录同一契约。 阅读文本框指南→ 查看兼容性边界→ GitHub Release↗ Writer 整段修订保持原生与原子语义 有界纯文字整段插入与删除现在作为一个完整块审核,并通过原生段落标记记录往返。
一个段落,一项决定 正文与段落标记相匹配的插入或删除会导入为一张审核卡。接受、拒绝、撤销、导出和重开都会保留完整块、作者、日期和原生修订状态。 原生身份保持真实 有界识别器会分别校验正文和段落标记 ID,以匹配本机 WPS 参考中观察到的独立身份,同时要求作者、时间、类型和准确纯文字结构一致。 边界明确的响应式审核 孤立段落分隔符合并或拆分、混合内容、格式错误元数据和超限输入仍进入诊断。桌面和 390px 真实 DOCX 流程覆盖触控尺寸、键盘导航、焦点、可访问性、截图与干净浏览器诊断。 阅读段落标记指南→ 阅读比较边界→ GitHub Release↗ Writer 比较配对同一分节内文字移动 唯一文字范围现在可以在同一分节内对齐的简单段落或标题之间移动,并保持为一项原子审核决定。
段落范围保持完整 比较会保留源段落和目标段落范围,不会压平文档树。同一分节内对齐简单文字块中,文字格式一致且分隔空白可携带的唯一词法范围会成为一张成对移动卡。 一项原子决定与原生重开 接受、拒绝、撤销、DOCX 导出和重开会保持跨段移动两侧同步,并通过原生 w:moveFrom/w:moveTo 记录保留精确的原稿和修订稿文字。 边界明确且经过测试 重复候选、格式不一致、跨分节移动、富文本或关系绑定内容、表格及超出上限的输入仍保持普通修订或诊断。桌面和 390px 审阅流程验证容纳性、可访问性与干净浏览器诊断;WPS COM/UIA 证据继续记录在案。 阅读比较指南→ 阅读移动协作合同→ GitHub Release↗ Writer 比较识别有界文字移动 同一段落中的词法移动现在显示为一张确定性审核卡,含糊或结构复杂的编辑仍保持明确安全边界。
一个对齐移动,一项决定 比较会在简单段落或标题的对齐删除/插入块中,为各出现一次的唯一词法范围配对;分隔空白随范围移动,因此一张移动卡的接受、拒绝、撤销和重开都保持精确。 身份不清时安全失败 重复候选、富文本或关系绑定运行、跨段范围和超出上限的文字会保留为普通修订或诊断,不会被猜测成移动。 参考 WPS 的响应式审阅 本机 WPS 12.0 COM/UIA 探针将测试中的重排暴露为删除/插入记录;A3S 记录该证据,并在桌面和 390px 浏览器流程中验证本地成对增强与干净诊断。 阅读比较指南→ 阅读移动协作合同→ GitHub Release↗ Writer 移动修订保持成对并原生往返 有界纯文字 Word 移动修订现在形成一条审核决定,以原生移动记录往返,并明确诊断不支持的结构。
一次移动,一张审核卡 严格或过渡命名空间中身份、作者、日期和文字一致的 w:moveFrom/w:moveTo 会导入为一条原子移动修订;接受或拒绝会同时处理源位置和目标位置。 原生输出保持诚实 DOCX 导出会把临时包装改写为原生 moveFrom 和 moveTo 元素,保留审核归属,重开时不泄露私有标记或负数身份。 不支持的形态失败关闭 富内容、关系绑定内容、范围标记、格式错误元数据和未配对移动会保留为兼容性诊断,不会伪装成可编辑语义;PDFium 资源路径也已稳定,桌面和紧凑布局的直接导入都能就绪。 阅读移动修订指南→ 阅读协作合同→ GitHub Release↗ Writer 选区控件恢复紧凑视觉契约 浮动选区工具栏的下划线和删除线拆分控件不再暴露浏览器原生 outset 边框。
重置浏览器原生默认样式 两个拆分控件现在使用工具栏按钮基线,显式统一 appearance、边框、背景、间距和图标对齐规则。 一个组合,一条分隔线 主操作和下拉入口保持视觉分组,只显示一条像素分隔线,同时保留清晰的悬停、按下和焦点状态。 格式语义保持不变 下划线和删除线命令、可访问名称、键盘行为及高级样式菜单继续使用既有类型化合同。 阅读选区工具栏说明→ GitHub Release↗ Writer 内容控件保持有界并原生往返 行内纯文本和富文本内容控件现在共享一个类型化编辑器节点、一条锁定边界和严格的原生 DOCX 合同,不引入远程服务。
在一个弹窗中完成完整意图 “插入”功能区和响应式弹窗可以创建或编辑行内控件:显示名称、程序标签、纯文本或富文本、多行行为、边框/标签/隐藏外观以及可选颜色都在一次意图中完成;每次确定只产生一条类型化更新和一步撤销。 锁定在 UI 之下的事务边界生效 内容锁和控件锁会拒绝意外输入、粘贴、替换、删除和普通元数据写入;需要解锁的操作必须通过显式类型化命令完成,可访问名称会跟随控件显示名称或程序标签。 原生 DOCX 边界保持诚实 直接位于段落的 `w:sdt` 控件会在严格或过渡 WordprocessingML 中往返无冲突身份、富文本运行、锁定、多行文字及 Word 2012 外观/颜色。绑定、占位符、重复区域、表单控件、嵌套结构和关系绑定内容会被诊断并保留为安全文字。 阅读内容控件指南→ GitHub Release↗ Writer 常用字段保持实时并可引用 字数、字符数和书签目标页码现在共享一个有界字段模型、一套实测分页来源,以及明确的原生 DOCX 边界。
统计不把生成结果算入正文 “插入”功能区提供兼容 Word 的 NUMWORDS 与 NUMCHARS 字段:统计可见正文、保留行内原子两侧的字边界、把空格计入字符数,并与 PAGE 系列字段在一次受控更新中刷新。 书签可以变成实时目标页码 “交叉引用”弹窗为书签提供“插入目标页码”。PAGEREF 保存书签稳定身份和当前名称,跟随规范化更新,目标消失时切换为明确的缺失状态。 原生往返坚持安全失败 导入/导出只把完整行内常用字段和有界开关语法恢复为原子字段;不支持的开关、缺失目标、嵌套结构和损坏字段保留缓存文字并进入兼容性诊断。 阅读常用字段指南→ GitHub Release↗ Writer 文本框现在可编辑且原生往返 有界文本框节点把熟悉的 Writer 控制、确定性的页面渲染与独立 WPS DrawingML 往返连接起来,无需第二套文档模型。
一次插入,上下文内编辑 “插入”功能区创建隔离文本框;上下文功能区编辑嵌入或浮动布局、毫米几何尺寸、偏移、填充、轮廓、内边距和垂直对齐,每个意图只产生一步撤销。 页面、预览与 PDF 共用一个投影 同一套有界尺寸与位置状态驱动实时编辑、只读预览、PDF 捕获和保持整块分页行为。 原生 WPS 形状并明确边界 带 `txBox="1"` 的独立 `wps:wsp` 形状会保留文字、几何尺寸、位置、填充、轮廓、内边距、垂直锚点和绘图身份;混合或损坏分支留在普通兼容路径并明确诊断。 阅读文本框指南→ GitHub Release↗ Writer 图片现在可以在本地旋转和翻转 有界的图片变换模型把 90° 旋转和翻转纳入同一个受控编辑器与原生 DOCX 工作流。
一个熟悉的“图片”功能区 可访问的向左旋转、向右旋转、水平翻转和垂直翻转操作,与现有环绕和对齐命令放在一起。 弹窗保留完整编辑意图 “图片属性”在适配手机的布局中提供同样的 90° 旋转与翻转控制;确定只产生一次受控更新和一步撤销。 原生往返并明确边界 DOCX `a:xfrm` 的旋转与翻转值会重开为可编辑状态;任意角度或格式错误的变换会被诊断并安全归一化。 阅读图片变换指南→ GitHub Release↗ 表格下拉列表现在可以跟随本地驱动值 有界的本地 INDIRECT 来源把依赖下拉纳入同一个受控数据验证流程,不引入远程服务。
在弹窗中直接编写依赖关系 序列来源字段支持由带引号文本、单元格引用和拼接组成的有界 =INDIRECT(...) 语法,并提供公式说明和 Sigma 图标提示。 每一行都得到正确选项 相对驱动值会从每个选定区域锚点逐单元格重新求值;工作簿名称和一维本地区域按单元格解析,驱动值为空时显示空列表。 原生往返且安全失败 原始公式保持紧凑,运行时投影限制为最多 1,024 个来源单元格和 10,000 个物化单元格,原生 XLSX 导出/重开保留公式和名称。 阅读依赖下拉指南→ GitHub Release↗ 表格条件格式现在支持公式编辑 本地有界公式规则补上最常用的条件格式缺口,同时让优先级、空白区域和原生 XLSX 语义保持可检查。
在同一个规则管理器中编辑 开始 → 条件格式提供一等自定义公式编辑器,支持相对/绝对引用、跨表单元格、独立文字/填充颜色和匹配后停止的优先级。 本地且有界 只读取工作簿缓存值:公式最多 255 个 Unicode 字符、每次最多读取 1,024 个单元格,有界扫描空白单元格,遇到不安全引用会安全失败。 原生往返与真实模板 XLSX expression 条件记录、差异样式、sqref 和优先级可在导出与重开后保留;公开公式条件格式模板展示了无需远程服务的完整流程。 阅读公式条件格式指南→ GitHub Release↗ 表格验证规则现在支持本地自定义公式 有界的自定义公式规则把本地依赖检查纳入同一个可访问数据验证流程,不引入远程服务。
在验证处直接编写 共享弹窗支持可选的 = 前缀,隐藏无关的数值运算符,并把公式作为一等规则持续展示。 相对且本地可控 求值前会替换为待提交值;引用以每个选定区域为锚点,常用的带工作表单元格或区域引用始终留在工作簿内。 失败关闭,原生往返 255 个字符和 1,024 个单元格读取上限会拒绝不安全或无缓存引用,同时原生 XLSX 导入/导出和公开模板都会保留规则。 阅读自定义公式验证指南→ GitHub Release↗ 表格数据验证警告现在与 Office 决策一致 非法表格输入现在会解释规则,并提供与 Office 一致的停止、警告或信息决策,不再把所有情况合并成一条浏览器路径。
停止就是阻止 可访问提示会丢弃非法草稿并保持原单元格选中,即使输入来自公式栏的 Enter 提交。 警告与信息可明确决策 警告提供“继续输入/取消”,信息提供“保留输入/返回修改”,并在上下文中展示自定义文案与当前值。 一次受控提交 确认保留的非法值只使用一次类型化绕过,因此选区、焦点、撤销、协作和原生 XLSX errorStyle 保真度都保持有界。 阅读表格数据验证交互指南→ GitHub Release↗ Writer 编号变化现在可以完整审阅 有序列表样式与起始编号修改现在会形成一条原子修订,贯通审核、协作、原生 DOCX 与撤销。
一个列表,一个意图 “编号格式”卡可以接受当前列表,或恢复完整原样式与起始值,而不改动列表文字。 原生修订保真 常见单层十进制、字母与罗马数字 w:numberingChange 可导入、导出和重开,异常形式会失败关闭。 受保护的协作 Yjs/Yrs 会跨持久化保留编号元数据与不可变决定,建议模式则拒绝篡改审核元数据。 阅读 Writer 编号修订指南→ GitHub Release↗ 演示对象现在可以完整登场与退场 同一个幻灯片对象现在可以通过统一的排序、创作、放映、协作与原生 PPTX 模型组合一条进入和一条退出效果。
对象式创作 动画选项卡可明确切换进入与退出,并在当前上下文中统一管理效果、方向、触发、计时、顺序和预览。 可组合放映 八种有界效果共用一套提示模型;同一对象的连续效果可以组合,重叠时间段则会在修改前拒绝。 原生 PPTX 证据 进入/退出计时类型、in/out transition、对象目标、触发、计时和方向都能通过导出、导入与二次重开。 阅读演示文稿动画指南→ GitHub Release↗ 真正说明产品变化的更新日志 文档现在把近期版本组织成支持双语和版本冻结的产品故事,不再只提供扁平的实现链接列表。
可快速扫读 无需先打开深层参考,即可看到版本、日期、变更类型、编辑器、用户收益与验证入口。 冻结历史 切换到旧版文档时,会自动隐藏当时尚未发布的版本,避免历史页面漂移。 一份完整档案 面向用户的发布摘要继续链接到完整仓库日志和不可变的 GitHub Release。 查看完整更新日志↗ GitHub Release↗ Writer 原生 OpenType 排版 普通文字与结构化公式现在共用一套有界的 Office 2010 排版模型,并支持精确 DOCX 重开。
完整控制项 可编辑全部 16 种连字组合、数字形式与间距、样式集 1–20 和上下文替代。 混合选区安全 高级字体弹窗只修改用户触碰的属性,恢复选区,并只生成一条撤销记录。 原生保真 正文、页眉页脚、脚注尾注、批注、样式、格式刷与格式修订都保留同一模型。 阅读 Writer 指南→ GitHub Release↗ XLSX 1900 与 1904 日期保持精确 Spreadsheet 现在显式持有工作簿日期纪元,并在筛选、协作、导出与重开中保留精确原生序列。
无时区漂移 日期类型的标量值和公式缓存保持数值形式,不再经过 JavaScript Date 转换。 统一工作簿纪元 动态筛选、菜单分析、排序后协调和当前日期输入共用同一 1900 或 1904 设置。 真实文件验证 导入、导出、重开、1904 序列 0、协作和浏览器工作流得到联合验证。 阅读 Spreadsheet 指南→ GitHub Release↗ 自定义排序理解表格与 AutoFilter 所属区域 从原生表格或工作表筛选区域内部排序时,会解析精确结构范围,并在行移动后重新协调可见性。
结构边界 表头保持固定,启用的汇总行不参与排序,所属区域禁止从左到右移动。 筛选安全移动 类型化筛选会重新计算,不透明隐藏行的所有权则跟随稳定排序置换。 有界执行 稠密与稀疏读取共享明确预算、失败关闭指纹、一次受控更新和单步撤销。 阅读自定义排序指南→ GitHub Release↗ 管理可复用的自定义序列 自定义排序新增响应式偏好管理器,可管理内置月份、星期及用户定义的业务序列。
暂存式编辑 可先创建、编辑、删除和重排最多 32 个用户序列,再一次性确认。 排序键保持一致 活动排序层级会跟随序列编辑,并在引用序列被删除时安全回退。 宿主持有偏好 可选的类型化持久化不会把个人序列偏好写入受控工作簿内容。 阅读自定义排序指南→ GitHub Release↗ 受控中文输入法只提交一次最终文本 拼音等预编辑值在组合完成前保持本地,权威宿主替换也等待同一组合边界后再协调。
不再泄漏拼音 Document 与可视化 Markdown 只发布最终中文,不再发布中间组合文本。 受控状态协调 组合期间收到的宿主更新会在本地输入法结束后再应用。 WebKit 发布门禁 专用浏览器契约验证预编辑阶段零次发布,并且最终只产生一次变化。 阅读 Document 输入法约定→ 阅读 Markdown 输入法约定→ GitHub Release↗ 文件操作、演示文稿输入法与本地筛选体验升级 共享外壳获得更清晰的操作语义,同时演示文稿组合输入与表格筛选成为可靠的离线工作流。
清晰的文件菜单 明确图标、危险操作样式、有界滚动、键盘焦点和清晰禁用态让宿主操作更易理解。 演示文稿组合输入 幻灯片文字把预编辑输入保留在本地,输入法活动时编辑器快捷键主动让行。 原生本地筛选 通配符、前后若干项、复合自定义及类型化 AutoFilter 条件均可离线创作并往返。 阅读文件操作约定→ 阅读 AutoFilter 指南→ GitHub Release↗ 原生 Spreadsheet 汇总行 表格创建与表格设计现在可创作支持筛选的原生汇总函数、标签或有界自定义公式。
常用函数 求和、平均值、计数、极值、方差、标准差、标签和自定义公式都保持类型化。 理解筛选的计算 生成的原生汇总使用由 Rust、WebAssembly、Worker 与 JavaScript 共用的 SUBTOTAL 语义。 精确 XLSX 往返 汇总函数、标签、公式、稠密/稀疏所有权和协作状态都能经受导出与重开。 阅读表格指南→ GitHub Release↗ 结构化引用参与计算并自动填充 原生表格公式现在可通过有界的 Rust、WebAssembly、Worker 与 JavaScript 路径计算,插入行也能安全继承计算列规则。
原生表格语法 表格列、当前行公式、工作表限定符与常见行选择器共用同一解析器和依赖图。 安全计算列 只有新插入正文行中的空单元格会接收推断公式,手动例外与已有值始终保持权威。 明确边界 表格数量、物化范围、不支持的引用、协作验证与 XLSX 元数据都采用失败关闭策略。 阅读结构化引用指南→ GitHub Release↗ 带版本上下文的沉浸式 Playground 公开 Playground 现在是一体化全视口工作区,提供类型化、可筛选的版本能力画廊,并提升编辑器首次打开时的焦点可靠性。
一体化工作区 移除重复的全局外壳,让编辑器、最近文件和创建流程共享完整可用视口。 类型化版本画廊 每个精选工作流都在响应式筛选网格中持有唯一启动目标、编辑器类型和版本标签。 稳定首次交互 空白演示文稿标题与表格实时选区会保留预期焦点,不再丢失第一次操作。 打开 Playground↗ GitHub Release↗ 演示文稿入场动画 演示文稿现在可创作、排序、预览、播放、协作并原生往返一组有界的入场动画。
四种效果 出现、淡入、飞入与缩放会在效果支持时提供可编辑方向和时序。 三种触发方式 单击时、与上一动画同时、上一动画之后三种提示保持稳定身份和确定播放顺序。 原生时序树 支持的提示可经受协作、复制/删除重映射、放映、PPTX 导出与重开。 阅读入场动画指南→ GitHub Release↗ PDF 页面组织 PDF 新增响应式页面组织器,可执行结构化编辑,同时保留 Blob 所有权、原生历史优先级和明确安全限制。
完整页面计划 插入、删除、旋转、重排、抽取、合并与拆分共用同一套可预览操作模型。 Worker 持有变更 按需加载的独立 Worker 为每次源文件变更返回一个完整 Blob 和一条页面历史记录。 失败关闭安全 源文件大小、合并大小、页数、加密、签名、目录风险与无效计划都会在变更前受限。 阅读 PDF 指南→ GitHub Release↗ 文档比较与合并 Writer 可把 DOCX、HTML 或 TXT 差异转成确定、可审阅的修订,同时不会替换当前文档。
可审阅差异 插入、删除、字符格式与段落格式通过一次事务和一条撤销记录进入文档。 确定身份 稳定身份、作者归属和有界差异矩阵让审阅决策可以复现。 安全合并 合并要求精确的全部拒绝基线,并拒绝不支持的结构或尚未解决的当前修订。 阅读文档比较指南→ GitHub Release↗ Writer 原生文档索引 Writer 现在可标记、编辑、生成、自定义并刷新有界的原生文档索引,并支持精确 DOCX 重开。
类型化索引项 主次索引项、交叉引用、页码强调和稳定标记身份均保持可选择。 响应式创作 标记、插入、自定义和刷新都会恢复焦点,并只创建一次事务和一条撤销记录。 原生域保真 XE 索引项、INDEX 域、缓存行、分栏、前导符和页码样式可经受导出、重开与再次导出。 阅读文档索引指南→ GitHub Release↗ Writer 引用工具与 Spreadsheet 数据验证 目录、字符保真和完整数据验证设置成为一等可编辑工作流,并支持原生往返。
可更新目录 标题级别、链接、页码、对齐、前导符、缓存条目和显式刷新共用同一类型化块。 字符保真 原生底纹图案以及拉丁、东亚、双向校对语言都可显式创作并往返。 完整验证体验 Spreadsheet 数据验证覆盖下拉列表、输入提示、错误警告、公式、区域与原生 XLSX 语义。 阅读 Writer 引用指南→ 阅读数据验证指南→ GitHub Release↗