☰
3 条命令跑通 PDF 全文翻译:公式和排版完整保留的完整指南
2026/9/29 2:39:57 网站建设 项目流程

3 条命令跑通 PDF 全文翻译:公式和排版完整保留的完整指南

【免费下载链接】PDFMathTranslate[EMNLP 2025 Demo] PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/MCP/Docker/Zotero项目地址: https://gitcode.com/GitHub_Trending/pd/PDFMathTranslate

PDFMathTranslate(pdf2zh)把外文 PDF 译成中文,同时保留数学公式、图表、目录和原始排版,支持 Google/DeepL/Ollama/OpenAI 等翻译服务,提供命令行、浏览器 GUI 和 Docker 三种入口。

谁需要它 📄

如果你常读带公式的外文论文、技术手册或会议材料,这个工具就是为你准备的。它适合三类人:需要精读带推导的学术 PDF 的科研人员;负责技术文档本地化、要批量产出双语版本的工程师;以及想给文献库批量生成中文对照版、又不愿逐页手工重排的读者。项目已被 EMNLP 2025 Demo 收录,代码里同时提供 MCP 服务入口,方便接入自己的工具链。

一条命令跑起来 ⚡

最简路径是 pip 安装加一次调用,要求 Python 3.11–3.12:

pip install pdf2zh pdf2zh example.pdf

装完直接翻译当前目录的 PDF,默认使用 Google 服务、无需任何 API key。团队部署可以用docker pull byaidu/pdf2zh跑镜像,然后打开http://localhost:7860/使用浏览器界面;Windows 用户从 release 页下载 win64 zip 包解压双击即可,不需要装 Python。

完整走一遍:从 PDF 到双语文档 🔄

准备输入,执行一次完整翻译把example.pdf放到终端所在的目录,执行pdf2zh example.pdf。结束后你会在同一目录拿到两份文件:example-mono.pdf(纯译文)和example-dual.pdf(左右双栏对照),原文件的版式、公式和目录位置保持不变。文件较多时建议加-o out/指定输出目录,避免结果散落。

不想敲命令时,改用拖拽界面执行pdf2zh -i会自动打开浏览器(默认地址http://localhost:7860/),拖入 PDF、选择语言和翻译服务即可开始。端口冲突时加--serverport 8080,想临时给同事用则加--share生成一个外部可访问的地址,细节见 docs/README_GUI.md。

按需裁剪页码、语言和翻译引擎只翻指定页:pdf2zh example.pdf -p 1-3,5;指定语言:-li en -lo ja表示英文译成日文;换引擎:-s deepl、-s ollama、-s openai:gpt-4o-mini。除 Google 等免配服务外,其余引擎都需要先设置对应的环境变量,完整对照表在 docs/ADVANCED.md。

公式为什么不会坏 🔍

本地布局检测先划出禁区每页先过一遍本地 ONNX 格式的 DocLayout-YOLO 模型(检测输入尺寸 1024,模型跑在 CPU,不需要显卡),把公式、代码块、表格、图注框出来,落在这些区域内的文本整体跳过翻译。

字体级例外模式兜底检测之外还有一层保险:默认例外模式专门匹配TeX-、MS、CM、.*Math、.*Sym等数学字体名(对应-f/-c参数),命中这些字体的字符一律保留原样,所以行间公式和符号不会被拆碎。

扫描版走 OCR 实验通道扫描型 PDF 可加装 OCR 支持(pip install 'pdf2zh[ocr]'):程序只对纯图像页做本地识别,识别出的词会在版式区域内重新合并成段落,译文按原文字号的中位数起排、自动缩放到原始文本框内。限制是只针对白底扫描件,手写体和行间公式可能识别不准。另外--mode precise会启用实验性的 v2.0 内核,处理跨栏、跨页的语义一致性,首次使用需按仓库说明运行pdf2zh-setup-precise准备隔离环境。

常用选项速查 🧰

选项作用什么时候用
-p选择页码,如-p 1-3,5只翻摘要、某几章或指定单页
-li/-lo源语言 / 目标语言翻译方向不是默认"自动检测→中文"时
-s翻译服务,如-s deepl、-s ollamaGoogle 结果不够好,或想用本地模型
-t翻译线程数文档页数多、API 额度充足时提速
-o输出目录不想让结果堆在当前目录
-f/-c字体/字符例外正则个别符号或字体总被误翻时
--dir批量翻译整个文件夹一次处理一整篇文献库
--config从 JSON 配置文件读参数参数固定、希望一条命令反复执行
--mode precise切换实验性 v2.0 内核疑难版式、跨栏跨页文档
--prompt指定自定义提示词文件用 LLM 服务时需要统一术语风格

更多参数的完整说明在 docs/ADVANCED.md。

先踩过的坑 ⚠️

Q:第一次运行就卡在"下载模型",等了十分钟没动静。网络到不了 Hugging Face 时,先设置镜像再执行:set HF_ENDPOINT=https://hf-mirror.com(PowerShell 用$env:HF_ENDPOINT="https://hf-mirror.com")。布局模型是一次性下载,之后离线可用。

Q:翻译跑完了,结果文件到底在哪?默认输出到当前工作目录,命名固定为原文件名-mono.pdf和原文件名-dual.pdf,加过-o则在指定目录里。找不到时先ls当前目录,这是最高频的误会。

Q:一份 80 页的 PDF 要等十几分钟,能再快点吗?瓶颈大多在翻译服务的 API 延迟,-t 4之类的多线程只在线程数小于任务数时有效。翻译结果缓存在~/.cache/pdf2zh,相同段落重跑会直接命中缓存;换服务或想强制重翻时加--ignore-cache。

一句话总结:把 PDF 丢给pdf2zh,拿回一份公式、图表和版式都没动的双语文档。

  • 核心能力:PDF 全文双语翻译、数学公式与排版完整保留、多翻译引擎与 OCR 支持
  • 适用场景:外文论文精读、技术文档本地化、会议材料双语制作

【免费下载链接】PDFMathTranslate[EMNLP 2025 Demo] PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/MCP/Docker/Zotero项目地址: https://gitcode.com/GitHub_Trending/pd/PDFMathTranslate

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询