PDFMathTranslate 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、OpenAI、Ollama 等一大排翻译服务,本地和服务器都能跑。
最该用它的人
- 批量读外文文献的学生:先拿到能读懂的中文版,精读时再对照原文
- 精读论文的研究人员:要求公式、图、注释位置一根头发丝都不动
- 团队或实验室:服务器部署一次,成员开浏览器就能用
- 做集成的开发者:通过 Python / HTTP API 接进自己的产品,或走 Zotero 插件嵌进文献管理流程
装完就能翻:一条命令的事
前提是 Python 3.11 到 3.12 的环境。
pip install pdf2zh装好后pdf2zh命令即可用,默认走 Google 翻译服务,在当前目录生成两个结果文件:你的文件-mono.pdf是干净译文版,你的文件-dual.pdf是中英双语对照版。
pdf2zh your_document.pdfWindows 用户不用装 Python,从 Release 页下载 zip 包,解压后双击 exe 直接运行;如果提示缺少运行库,装上vc_redist.x64.exe再试一次。
三条路线挑一条:图形界面、容器、终端
图形界面:pdf2zh -i点着玩
pdf2zh -i会启动一个本地网页,浏览器没自动打开就手动访问http://localhost:7860:拖入 PDF、选翻译服务、选目标语言,等进度条走完下载即可。选这条路线的理由很简单——不想记任何参数,只想点几下就看到结果。
🐳 Docker:两条命令搭共享服务
选它的时机:服务器不想装 Python 环境,或者要整个团队共用一份翻译能力。
docker pull byaidu/pdf2zh docker run -d -p 7860:7860 byaidu/pdf2zh起来后团队成员打开http://服务器IP:7860就能翻,谁都不用装任何东西。
命令行:翻完即走,可挂进脚本
选它的时机:写自动化——这条命令能直接塞进定时任务或处理流水线。
# 基本用法,译文输出到当前目录 pdf2zh your_document.pdf # 指定翻译服务 pdf2zh your_document.pdf -s deepl # 只翻第 1 到 5 页 pdf2zh your_document.pdf -p 1-5前后对比:哪些东西它不动
左边是原页面,右边是译文:
正文换成中文,公式编号、双栏结构、图表位置原封不动。它敢这么做,是因为先用布局模型把页面区域识别出来,公式和图表整块保护,只翻译普通正文,再按原坐标回填。双语版(-dual.pdf)还有个隐藏用途:核对术语时左手看中文右手对原文,比开两个窗口方便。
翻译引擎方面,内置服务覆盖面很广:Google、DeepL 免费档够用日常;DeepL Pro、OpenAI 适合对质量有要求的生产场景;Ollama、Xinference 直接挂本地开源模型,数据不出机器。换服务只需要加一个-s参数。
高频参数速查表
| 场景 | 命令 | 一句说明 |
|---|---|---|
| 复杂排版翻不动 | pdf2zh doc.pdf --compatible | 兼容模式,放宽解析约束 |
| 大文件慢 | pdf2zh doc.pdf -t 4 | 多线程翻译提速 |
| 只读前几页 | pdf2zh doc.pdf -p 1-5 | 按页码范围翻译 |
| 批量处理 | pdf2zh --dir ~/papers/ | 目录内 PDF 一次翻完 |
| 自定义提示词 | pdf2zh doc.pdf --prompt prompt.txt | 给 LLM 类服务指定翻译风格 |
| 术语与排版偏好 | pdf2zh doc.pdf --config cfg.json | 固定术语、字体、代理写进配置文件长期复用 |
异常字体、翻译缓存、登录授权这些低频选项不在此展开,完整字段去 docs/ADVANCED.md 查。
卡住了?对表自查
- 首次运行报模型下载失败→ 布局模型走 HuggingFace,受限网络拉不动:
export HF_ENDPOINT=https://hf-mirror.com # Windows PowerShell 写法:$env:HF_ENDPOINT = "https://hf-mirror.com" - 复杂排版文档报错或输出错乱→ 默认内核吃不消这种版式:加
--compatible重翻一遍 - 大文件翻译太慢→ 默认线程保守:
-t 4提速,多份文献直接用--dir批量跑 - GUI 起不来、端口被占用→ 默认占 7860:
pdf2zh -i --serverport 8080换个端口 - 译文里个别词翻得不对想重来→ 默认复用翻译缓存:
--ignore-cache强制重新翻译
接下来读两份文档
- 完整参数与翻译服务环境变量对照表:docs/ADVANCED.md
- Python / HTTP API 接入细节:docs/APIS.md
翻完论文还要回原文核对公式编号,翻译时间就白花了一半——把文字交给它,把版式留给它。
【免费下载链接】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),仅供参考