word-gongwen-format(word文档格式处理)

👤 jack.竹林 📦 v1.0.0 ⭐ 4.6 ⬇️ 167 下载
📄 办公效率 免费

📖 技能介绍


name: word-gongwen-format description: "Word 公文格式规范化技能。将 .docx 文档按党政机关公文格式要求一键格式化:A4 页面与页边距(上3.5/下2.9/左右2.55cm)、固定行距29磅、文档网格每页22行、方正系列字体(小标宋/黑体/楷体/仿宋)的各级标题层级、正文三号仿宋配数字字母 Times New Roman、奇偶页页码(宋体四号、单数居右偶数居左空1字)。当用户提到“公文格式”“Word排版”“方正字体”“规范格式化 docx”“调整成公文格式”“红头文件格式”“标题层级字体”“设置页码奇偶页”等需求时使用此技能。" agent_created: true


Word 公文格式规范化

概述

将任意 .docx 文档按公文格式规范一键格式化。核心能力由 scripts/format_docx.py 实现:基于 python-docx,通过直接操作 OOXML(rFonts 的 eastAsia、docGrid、 fldSimple 页码域、evenAndOddHeaders)解决 python-docx 原生不支持中文字体、 文档网格、奇偶页页码等关键问题。

格式规范的权威来源见 references/format_spec.md,需核对具体数值时加载该文件。

触发场景

  • “把这篇 Word 排成公文格式 / 规范格式”
  • “按公文要求设置字体、字号、行距、页码”
  • “方正小标宋 / 方正仿宋 / 三号字 / 固定行距29磅”
  • “标题层级:一、(一)1.(1)的字体怎么设”
  • “页码单数居右、偶数居左空1字”
  • “每页22行每行26字怎么设置”

运行环境准备

脚本依赖 python-docx。使用受管理的 Python venv:

VENV_PY="C:\Users\Administrator\.workbuddy\binaries\python\envs\default\Scripts\python.exe"

若 venv 不存在或缺少 python-docx,先准备环境(仅首次):

PY="C:\Users\Administrator\.workbuddy\binaries\python\versions\3.13.12\python.exe"
VENV="C:\Users\Administrator\.workbuddy\binaries\python\envs\default"
[ -d "$VENV" ] || "$PY" -m venv "$VENV"
"$VENV\Scripts\python.exe" -m pip install --quiet python-docx

工作流程

1. 确认输入与需求

  • 取得用户待格式化的 .docx 文件路径(绝对路径)。
  • 确认输出路径;默认在同目录生成 原文件名_公文格式.docx,避免覆盖原件。
  • 若用户提出与默认规范不同的要求(如字号、边距、是否要页码),记录并据此调整脚本参数。 完整规范见 references/format_spec.md

2. 运行格式化脚本

SCRIPT="C:\Users\Administrator\.workbuddy\skills\word-gongwen-format\scripts\format_docx.py"
"$VENV_PY" "$SCRIPT" "<输入.docx>" "<输出.docx>"

常用选项: - --title-paragraphs N:前 N 个非空段落作为大标题区(默认 1)。文档大标题 跨多行时按实际行数设置。 - --subtitle-paragraphs N:大标题之后、第一个一级标题之前的 N 段作为副标题 (方正楷体三号),默认 1;无副标题时设 0。 - --no-page-number:不生成奇偶页页码。 - --grid lines|snapToChars|none:文档网格类型,默认 lines(行网格,保证每页约22行)。 - --help-config:打印当前格式配置后退出,用于向用户展示将应用的规范。

3. 默认格式规范速查

对象 字体 字号 其他
大标题 方正小标宋_GBK 二号(22pt) 第一个非空段落
大标题下 方正楷体_GBK 三号(16pt) 副标题区
一级(一、) 方正黑体_GBK 三号
二级(一) 方正楷体_GBK 三号
三级(1.) 方正仿宋_GBK 三号
四级(1) 方正仿宋_GBK 三号 加粗
正文 方正仿宋_GBK(数字字母 Times New Roman) 三号
页码 宋体 四号(14pt) 奇右偶左空1字

页面:A4,边距 上3.5/下2.9/左2.55/右2.55cm,页脚1.75cm,行距固定值29磅, 文档网格 linePitch=580(每页约22行)。

4. 标题层级自动识别

脚本按段落首部编号模式判断层级,无需用户标注: - 一级:^[一二三四五六七八九十百]+、(一、二、…) - 二级:^[((][一二三四五六七八九十百]+[))]((一)(二)…,兼容中英文括号) - 三级:^\d+[\..](1. 2. …,兼容中英文句点) - 四级:^[((]\d+[))]((1)(2)…,兼容中英文括号)

匹配顺序为 一级 → 二级 → 四级 → 三级,避免 (1) 被误判。无法识别的段落按正文处理。

5. 验证与交付

  • 运行后向用户报告输出路径,并提示:方正字体需在查看机器上安装才能正确渲染, 未安装时 Word 会回退默认字体,但文档内字体名已正确保存。
  • 如用户需进一步调整(如大标题居中、首行缩进、特定段落字体),在脚本输出基础上 用 Word 或 python-docx 二次微调;不要直接改用户原件。

注意事项

  1. 中文字体必须设置 eastAsia:python-docx 的 run.font.name 仅影响西文字符, 中文字符需写 w:rFontsw:eastAsia,否则 Word 用默认宋体渲染。脚本已处理, 二次开发时勿遗漏。
  2. 字体可用性:方正小标宋_GBK、方正黑体_GBK、方正楷体_GBK、方正仿宋_GBK 需在 目标机器安装。可从方正字库官方获取“方正公文系列字体”。
  3. 不覆盖原件:始终输出到新文件,保留原始文档。
  4. 多 section 文档:脚本对每个 section 独立设置页面与页码;若文档有复杂分节, 先与用户确认分节是否需要不同设置。
  5. 大标题跨多行:若文档大标题实际占多行,用 --title-paragraphs 指定行数, 否则第二行会被误判为副标题或正文。

资源

  • scripts/format_docx.py:核心格式化脚本,自包含、带 argparse,可直接命令行运行。
  • references/format_spec.md:完整格式规范参考,含实现说明与字号对照表,需核对 具体数值或向用户解释规则时加载。

🤖 AI 评测

这个 Skill 质量很好,能一键将 Word 文档排成标准公文格式,字体、字号、行距、页码等设置一步到位。文档说明详细,参数配置灵活,错误提示友好。优点是功能完整、格式规范、自动化程度高。不足之处是依赖特定的方正字体包,用户需要自行安装;另外路径配置偏向 Windows 环境。建议提前准备好方正字体以获得最佳效果。

📊 多维度评分

适应性4.6
规范性4.4
有效性4.8
可靠性4.2
可信度5

📁 包含文件 (3 个)

📄 SKILL.md 6.1 KB
📄 references/format_spec.md 4.3 KB
📄 scripts/format_docx.py 15 KB

🔥 大家都在搜

wps 写作 pdf 苹果