Back to skills
extension
Category: OtherNo API key required

数学公式pdf转可编辑word格式

将扫描版数学 PDF 转换为排版整洁的 Word 文档,保留公式(OMML)和表格结构。依赖 MinerU + Pandoc + python-docx。

personAuthor: user_1627842fhubcommunity

数学PDF → Word 转换

适用场景

扫描版数学试卷/教辅 PDF(纯图片、无文字层),需要转成带可编辑公式和表格的 Word 文档。

依赖

| 工具 | 位置 | 用途 | |------|------|------| | MinerU 桌面版 | C:\Users\Administrator\Mineru | PDF→Markdown+图片 | | Pandoc | C:\pandoc\pandoc-3.6.4\pandoc.exe | MD→DOCX(公式→OMML) | | Python 3.10 | 系统Python | 表格转换、排版、去杂音 |

执行流程

1. 确认 MinerU 已处理 PDF

检查 C:\Users\Administrator\Mineru\ 下是否有对应的 UUID 目录,包含 full.mdimages/

2. 确认图片清理

询问用户是否已删除 images/ 中不需要的图片。如果没有,引导用户:

  • 打开 MinerU 输出目录下的 images/ 文件夹
  • 删除二维码广告、出版社logo等不需要的图片
  • 删除后告诉我,我重新生成

3. 运行流水线

$env:PYTHONIOENCODING="utf-8"
C:\Users\Administrator\AppData\Local\Programs\Python\Python310\python.exe D:\zhipuworkplase\math_pdf_tools\pipeline.py -s "UUID后缀" -n "输出文件名"

流水线自动执行:

  1. 将 HTML <table> 转为 Markdown 管道表格(Pandoc 不认 HTML table)
  2. Pandoc 生成 DOCX(公式 → OMML,表格 → Word 表格)
  3. 应用排版(A4、字体、边距、行距)
  4. 去除 MinerU 杂音(text_image、Geometric diagram 等描述文字)

4. 告知用户后续步骤

生成完成后告知:

  • 文件在 D:\zhipuworkplase\output_docx\math_output\
  • 可在 Word 中 引用→目录 自动生成目录
  • 合并单元格的表格需手动微调

关键注意事项

  1. Pandoc 不转换 HTML 表格:MinerU 输出的 <table> 在 Pandoc --to=docx 时会被当作文本。必须先用脚本转为 |...| 管道表格。
  2. 图片路径:Pandoc 必须在 markdown 所在目录执行(cwd=文档目录),否则图片引用找不到。
  3. MinerU 表格检测不完整:部分表格可能未被 MinerU 识别为表格,这类表格只能以图片形式保留。
  4. 合并单元格:colspan/rowspan 在 markdown 管道表格中无法表达,需手动调整。

排版参数

  • 纸张: A4 (21×29.7cm),边距上下2.5cm/左右3.2cm
  • 标题: 微软雅黑 14pt 加粗 #2E54A1
  • 正文: 等线 10.5pt,行距1.5倍,首行缩进2字符
  • 公式: Word 原生 OMML,双击可编辑