Word 格式刷
格式规范
| 对象 | 字体 | 字号 | 加粗 | 段前 | 段后 | 行距 | 首行缩进 |
|---|---|---|---|---|---|---|---|
| 正文 | 仿宋 | 三号(16pt) | 否 | 0 | 0 | 1.5倍 | 2字符 |
| 一级标题 | 黑体 | 二号(22pt) | 是 | 3 | 3 | 1.5倍 | 无 |
| 二级标题 | 黑体 | 小三(15pt) | 是 | 3 | 3 | 1.5倍 | 无 |
| 三级标题 | 黑体 | 三号(16pt) | 是 | 3 | 3 | 1.5倍 | 无 |
其它格式(页眉页脚、表格、图片、页面设置等)保持原文件不变。
使用方式
单文件格式刷
直接运行脚本:
python scripts/word_format_brush.py "输入文件.docx"
python scripts/word_format_brush.py "输入文件.docx" "输出文件.docx"
省略输出路径则覆盖原文件。
批量格式刷
对目录下所有 .docx 文件批量处理:
python scripts/word_format_brush.py "目录路径"
标题识别规则
脚本通过以下方式判断标题段落(优先级从高到低):
- 内置样式:Heading 1 / 标题 1 → 一级标题,Heading 2 / 标题 2 → 二级标题,Heading 3 / 标题 3 → 三级标题
- 大纲级别:
w:outlineLvl属性 val=0/1/2 分别对应一级/二级/三级标题
未命中标题规则的段落一律按正文格式处理。
输出示例
正在处理: 报告.docx
已保存至: 报告.docx
格式刷统计:
正文段落: 42
1级标题(二号): 3
2级标题(小三号): 7
3级标题(三号): 5
总段落数: 58
脚本位置
- scripts/word_format_brush.py — 核心格式刷脚本
注意事项
- 仅支持
.docx格式,不支持.doc - 处理前建议备份原文件
- 表格内文字、页眉页脚内容不在格式刷范围内(保持原样)
- 如需自定义格式参数,可修改脚本顶部的
BODY_FORMAT和TITLE_FORMATS字典