用途:处理 .docx 文件的创建、读取、编辑与分析。.docx 本质是包含 XML 的 ZIP 压缩包。
主要能力与用法: 读取/分析内容可用 pandoc --track-changes=all document.docx -o output.md 提取文本(含修订),或用 python scripts/office/unpack.py document.docx unpacked/ 获取原始 XML。 旧版 .doc 需先转换:python scripts/office/soffice.py --headless --convert-to docx document.doc。 转换为图片:先转 PDF 再用 pdftoppm。接受全部修订:python scripts/accept_changes.py input.docx output.docx(需 LibreOffice)。
创建新文档:使用 JavaScript 库 docx(npm install -g docx),用 Document、Packer 等组件生成,随后用 python scripts/office/validate.py doc.docx 校验。资料强调若干关键规则:显式设置页面尺寸(docx-js 默认 A4,美式文档用 12240 x 15840 DXA);横向页面传纵向尺寸并设 orientation;禁用 \n 换行与 unicode 项目符号,改用 Paragraph 与 LevelFormat.BULLET;PageBreak 须置于 Paragraph 内;ImageRun 必填 type;表格须用 WidthType.DXA 且列宽数组与单元格宽度一致,避免 PERCENTAGE;用 ShadingType.CLEAR;表格不可作分隔线;目录仅用 HeadingLevel。
编辑现有文档:三步流程——解包、编辑 unpacked/word/ 下 XML、用 python scripts/office/pack.py unpacked/ output.docx --original document.docx 打包。修订与批注默认作者为 Claude。新增内容建议使用智能引号 XML 实体;批注可用 python scripts/comment.py。自动修复可处理部分问题(如 durableId、xml:space),但无法修复格式错误的 XML 或不合法嵌套。
限制:部分操作依赖 LibreOffice;脚本路径与命令需按资料原样使用;未提供的功能、收费与平台信息暂未说明。