用途:帮助创建、编辑和分析 .docx 文件。.docx 本质是包含 XML 与资源的 ZIP 包,可按任务选择不同工作流。
主要能力:文本提取(用 pandoc 转 markdown,可用 --track-changes=accept/reject/all 显示修订);原始 XML 访问(读取批注、复杂格式、结构、嵌入媒体与元数据);新建文档(用 docx-js 的 Document、Paragraph、TextRun,Packer.toBuffer() 导出);编辑现有文档(用 Python Document 库操作 OOXML);审阅式修订工作流(用 markdown 规划变更,再以 OOXML 实现,建议每批 3-10 处变更);文档转图片(soffice 转 PDF,再用 pdftoppm 转 JPEG)。
使用方式:解包 python ooxml/scripts/unpack.py <office_file> <output_directory>,重新打包 python ooxml/scripts/pack.py <input_directory> <office_file>;转换示例 pandoc --track-changes=all path-to-file.docx -o output.md;图片转换示例 soffice --headless --convert-to pdf document.docx 和 pdftoppm -jpeg -r 150 document.pdf page。关键文件包括 word/document.xml、word/comments.xml、word/media/,修订使用 <w:ins> 与 <w:del> 标签。
适用场景:新建 Word 文档、修改自己的文档、处理他人文档、法律学术商务或政府文档的修订审阅。
限制:实现完整修订需系统性实施全部变更;应只标记实际变动的最小文本;不使用 markdown 行号定位 XML;依赖 pandoc、docx、LibreOffice、Poppler、defusedxml,缺失需先安装。