DOCX 文档工具包
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_053d27d0/user-053d27d0-docx-toolkit。
技能介绍
要解决什么问题
.docx 本质是 ZIP 里的 OOXML(XML + 资源)。用户让你新建、改稿或审阅 Word 时,不能只会「转纯文本」——评论、修订痕迹、复杂版式、嵌入媒体都要能落到正确工作流上。本技能用决策树把「读 / 建 / 改」拆开,避免一律用同一种工具硬改。
技能如何工作
读与分析
- 只要正文结构:用 pandoc 转 Markdown(可保留修订痕迹)。
- 要评论、元数据、媒体或细粒度结构:先
python ooxml/scripts/unpack.py解包,再读word/document.xml、word/comments.xml、word/media/等;修订对应<w:ins>/<w:del>。
从零创建
- 走 docx-js(JS/TS):必须先完整阅读技能内的
docx-js.md,再用Document/Paragraph/TextRun生成,最后Packer.toBuffer()导出。
改已有文档
- 自己的稿、小改动:Basic OOXML editing——完整读
ooxml.md,解包 → 用 Python Document 库改 →pack.py打包。 - 他人文档或法务/学术/政企类:Redlining workflow(默认且强制)。先用 pandoc 得到带修订的 Markdown,按章节/类型分批(建议每批 3~10 处),在 XML 里只标记真正变动的字,未改文字复用原
<w:r>的 RSID;每批改完 grep 校验document.xml再跑脚本。
视觉核对
- 需要「看版式」时:DOCX → PDF(LibreOffice)→ 按页转 JPEG(
pdftoppm),便于对照页面范围。
边界与注意点
- Markdown 行号不能用来定位 XML;用章节号、唯一上下文 grep 或段落结构。
- 修订要系统化做完再打包,最后用 pandoc 全文核对,避免漏改或误改。
- 生成 OOXML 相关代码时保持简洁,少冗余变量与无意义
print。
使用场景
- 法务在对方提供的合同 docx 上批量改付款期限、主体名称,并要求全文保留可复核的修订痕迹。
- 合规岗解包投标书,读取 `word/comments.xml` 与 `document.xml`,核对批注与条款结构是否一致。
- 审阅定稿前用 pandoc 将 docx 转 Markdown,检查是否仍有未处理的插入/删除修订标记。
- 从零编写制度或报告:按 `docx-js.md` 用 Document/Paragraph 生成新文件,避免手改打包 XML。
适合人员
- 审阅外协合同与模板的法务,需要在他人 Word 稿里精确 redline 而非整段重写。
- 维护科研/投标 Word 模板的项目助理,要分批改条款并解包 grep `document.xml` 校验定位。
- 用流水线产出说明书的研发文档工程师,倾向 docx-js 新建 docx,小改用 Python Document 库。
- 按审稿意见改学位论文或投稿修回稿的研究生,需走 redlining 分批改 XML 并最终 pandoc 全文核对。