用途:处理 .docx 文件,包括读取分析内容、创建新文档、编辑现有文档,以及将 .doc 转换为 .docx。.docx 本质是包含 XML 的 ZIP 压缩包。
主要能力:用 pandoc 提取文本(含修订);用 unpack.py 获取原始 XML;用 docx-js 生成新文档并校验;通过解包、编辑 XML、重新打包来修改现有文档;支持修订、批注、表格、图片、页眉页脚、目录、多栏布局等。
使用方式:读取用 pandoc --track-changes=all document.docx -o output.md;转换 .doc 用 python scripts/office/soffice.py --headless --convert-to docx document.doc;新建需 npm install -g docx,生成后用 python scripts/office/validate.py doc.docx 校验;编辑按解包、改 XML、打包三步:python scripts/office/unpack.py document.docx unpacked/,编辑 unpacked/word/ 下文件,再 python scripts/office/pack.py unpacked/ output.docx --original document.docx。接受修订用 python scripts/accept_changes.py input.docx output.docx。
适用场景:需要程序化生成或批量修改 Word 文档、处理修订与批注、转换格式时。
限制:部分操作依赖 LibreOffice;docx-js 默认 A4,需显式设置页面尺寸;表格宽度须用 DXA 且列宽与单元格宽一致;目录标题只能用 HeadingLevel;自动修复无法处理格式错误、无效嵌套、缺失关系或架构违规。具体收费与平台支持暂未提供。