技能|文件存储规则图文版制作SOP
适用场景
- 需把某份文字版存储规则 / 制度文档修订为以图形为主的图文版(含目录结构图、流程图、映射图),并输出 WORD 图文版;可选再出 GB/T 9704-2012 公文版。
- 触发语:"分析本目录结构和 XX 存储规则,修订为图文版(以图形为主)"。
- 输入:既有文字版规则 docx(如《程序开发文档存储规则》V1.x)、当前实际目录结构。
- 输出:图文版 HTML 主版 + WORD 图文版 DOCX(版本号升级,如 V1.2→V1.3);可选公文版。
- 实例:程序开发文档存储规则 V1.2(文字)→ V1.3(图文,5 图)→ V1.4(图文公文版)→ V1.5(七业务目录重构)。
操作步骤
- 核定文件:确认规则 docx 真实文件名与落点(HFMS 实际为"程序开发文档存储规则_vX.X_YYYYMMDD.docx",落 群晖服务器端\);用 zipfile 提取 word/document.xml 正文,统计章/段/表数。
- 分析目录结构:扫描实际目录树(排除 .trash/backup/.workbuddy),核对一级目录名与子类是否与规则条款一致。
- 设计 SVG 图(N 张):目录结构总览图、五类分流图、版本生命周期图、归类映射图、技能库七阶段图等。SVG 须 inline 具体色值、font-family: SimHei、marker 定义箭头,禁用 CSS 变量。
- 写 HTML:保留原规则全部条款,图穿插各章正文,关键规则补 HTML table;UTF-8 编码。
- 转 DOCX:
python build-graphic-docx.py <HTML> <DOCX> [PNG_DIR]——内置 resvg_py 渲染每张 SVG→PNG(width=1360,SimHei),python-docx 按文档序重建(h1~h3→标题、p→段落、ul/ol→列表、table→Table Grid、svg→居中插图 15.5cm)。无需 node/npm。 - (可选)公文格式排版:
python build-govdoc-docx.py <HTML> <DOCX> [PNG_DIR] [图注|分隔]按 GB/T 9704-2012 重新排版(A4、版心156×225mm、二号华文宋体标题、三号仿宋正文首行缩进2字、三号黑体/楷体层级、奇偶页码)。图注用 | 分隔,顺序对应 SVG 出现次序。 - 校验:DOCX 内嵌图数 = HTML 中 SVG 数;段/表数正常;关键条款逐条在位;抽查 1~2 张图渲染质量(中文/箭头/渐变)。
- 版本与清理:新文件按命名规范升版(独立新文件、不覆盖原);旧版移
.trash或按用户指令删除;渲染缓存目录(*_fig)移出正式文档区,存程序源代码\docs。
注意边界
- 运行前置:Python venv(
C:\Users\icece\.workbuddy\binaries\python\envs\default)须装python-docx+lxml+resvg_py。Node 工作区与 npm 在本机不可用(沙箱禁网),不再用@resvg/resvg-js。 - 渲染引擎:SVG→PNG 用
resvg_py(Rust 内核等效 @resvg/resvg-js,支持中文/箭头/渐变);中文统一 SimHei。 - 字体(公文版):仿宋/楷体/黑体/宋体/华文宋体本机均在位;「方正小标宋简体」缺失→公文二号标题用华文宋体加粗。
- 目录/文件名:严格按实际与规则,不自创;一级目录七类名不可变更。
- 缓存:SVG/PNG 中间产物移出正式文档目录(存 程序源代码\docs)。
- 红线:任何写文件前先出方案+步骤,经用户确认后执行。
反例避雷
- 别把规则 docx 文件名记错(HFMS 实际为"程序开发文档存储规则_vX.X_YYYYMMDD.docx")——记错会导致"找不到文件"。
- 别用 playwright/chromium、svglib+reportlab、github resvg exe、node @resvg/resvg-js 渲染(本环境均不可行;node 路线无包且 npm 不可达)。
- 别把渲染缓存(*_fig)留在 系统操作手册 等正式目录(违反"运行态/缓存不进正式资料")。
- 别覆盖原文件(须独立新文件 + 升版本号);别把旧版滞留回收站(按用户指令处置)。
- 别漏条款:图文化时须完整保留原规则全部条款,图只是可视化补充。
- 别漏图注:公文版每张图下方应有"图 N xxx"图注(build-govdoc-docx.py 第四参按 | 分隔传入)。
版本记录
- 2026-10-03 更新:① 渲染引擎由 node
@resvg/resvg-js改为 venv 的resvg_py(删 render_fig.js 与 USER 硬编码路径);② 新增build-govdoc-docx.py可选公文格式排版;③ 渲染脚本改为通用 CLI(HTML/DOCX/PNG_DIR 入参);④ 实例/文件名示例由某单位改为 HFMS 实际的《程序开发文档存储规则》。