一条命令把整篇 PDF 论文译成双语对照:PDFMathTranslate 完整使用指南
【免费下载链接】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(pip 包名pdf2zh)是一款免费开源的 PDF 翻译工具:它先识别页面中的公式、图表、目录与正文,再调用 Google、DeepL、OpenAI 等翻译服务逐段翻译,并把译文写回原坐标,一次运行同时产出保留原始排版的纯译文版和双语对照版。适合需要批量阅读外文论文、翻译技术文档的人。
一条命令产出两份 PDF
对任意本地 PDF(或 PDF 的 URL)执行翻译后,当前目录会生成两个文件:
paper-mono.pdf:纯译文版,整页替换为译文,公式、编号、多栏布局、目录位置不变;paper-dual.pdf:双语对照版,译文插回原文位置,适合边读边对照学习。
下图左侧为英文原文页面,右侧为工具翻译后的中文页面,公式与图号均保持原位:
从安装到第一份双语 PDF 需要几步
只需两步,默认 Google 翻译服务免配置任何密钥:
pip install pdf2zh安装命令行工具pdf2zh,需要 Python 3.11~3.12 环境;Windows 用户也可直接用发布页的pdf2zh.exe免安装版,双击运行。
pdf2zh paper.pdf几分钟后在当前目录得到paper-mono.pdf与paper-dual.pdf,这就是验证"装好了没有"的最短路径。
模型下载失败怎么办?首次运行会下载一个几十 MB 的版面检测模型,网络不佳时可先设置镜像源再运行(Windows 用set,PowerShell 用$env:):
set HF_ENDPOINT=https://hf-mirror.com更喜欢点选操作?执行pdf2zh -i启动 Web 界面,浏览器访问http://localhost:7860/,上传文件、选服务、选语言、预览译文,不用记任何参数。
公式与排版为什么不会乱
普通翻译靠复制粘贴 PDF 文本,公式变乱码、多栏排版散架。PDFMathTranslate 的做法是翻译前先做版面分析:内置的 DocLayout-YOLO ONNX 推理模型(实现在 pdf2zh/doclayout.py)把每页切成正文、公式、图片、表格、页眉页脚等区域,只把文本区送去翻译,非文本区按原坐标原样回填;公式类字体再由正则默认保护、不参与翻译,特殊情形可用-f/-c声明例外。多栏论文、跨页图表因此得以保留。
换翻译服务、限定页码、批量翻译的常用命令
# 换用 DeepL,只翻译第 1~3 页和第 5 页,输出到 out 目录 pdf2zh paper.pdf -s deepl -p 1-3,5 -o out-s指定翻译服务,服务名:模型名的写法可直接指定模型,例如-s openai:gpt-4o-mini。
# 批量翻译目录内所有 PDF,适合文献整理 pdf2zh --dir /path/to/papers/高频参数归纳如下,完整清单见 高级用法:
| 参数 | 作用 | 示例 |
|---|---|---|
-li/-lo | 源语言 / 目标语言 | -li en -lo ja |
-s | 翻译服务,内置 Google、Bing、DeepL、OpenAI、Ollama、Gemini、DeepSeek 等十余种 | -s deepl |
-t | 翻译线程数,长文档可加大 | -t 8 |
-f/-c | 用正则声明保持原样的字体或字符 | -f "(MS.*)" |
--ignore-cache | 强制重新翻译(译文默认写缓存,重复翻译不耗 API 额度) | |
--prompt | 自定义大模型翻译指令,可用${lang_in}、${lang_out}、${text}变量注入术语要求 | --prompt prompt.txt |
--config | 指定配置文件;不指定时读~/.config/PDFMathTranslate/config.json |
付费服务要配密钥吗?要。除 Google、Bing 等免费服务外,DeepL、OpenAI、Gemini 等均需在环境变量或配置文件中提供 API Key,各服务变量名对照表见 docs/ADVANCED.md;自建中转时BASE_URL必须带/v1后缀,配置示例见 代理配置。
不想装环境?GUI、Docker、API 三个入口
- Web 界面:本地
pdf2zh -i之外,--share可生成对外可访问的临时链接,--authorized users.txt用"用户名,密码"文件限制可登录用户,适合团队共享,详见 GUI 文档; - Docker:两条命令起一个团队共享的翻译服务,启动后浏览器访问
http://localhost:7860/,与本机 GUI 是同一套界面,docker-compose.yml 可二次定制:
docker pull byaidu/pdf2zh docker run -d -p 7860:7860 byaidu/pdf2zh- 嵌入自己的系统:Python API 可在脚本里直接调用
translate(files=..., lang_in='en', lang_out='zh', service='google');pdf2zh[backend]加--flask/--celery worker提供提交任务、查进度、下载结果的 REST 接口;pdf2zh --mcp把翻译能力暴露给 Claude Desktop 等 MCP 客户端,用自然语言指定文档即可翻译。细节见 API 文档。
扫描件 PDF 能不能处理
适合:
- 带文本层的电子 PDF:学术论文、技术报告、标准、教材,含多栏与跨页排版;
- 需要"译文 + 原文"对照学习双语表达的场景(
-dual.pdf); - 需要批量、可复现处理整目录文献的科研或工程团队(
--dir); - 想把翻译能力接进自有系统或 AI 助手的开发者(API / MCP)。
不适合或需要留意:
- 扫描版 / 图片型 PDF:工具读取 PDF 内嵌文本,纯图片页面没有可翻译内容,需先做 OCR;
- 翻译质量取决于所选服务:默认 Google 免配置,术语要求高时换 DeepL 或大模型并用
--prompt注入领域要求; - 环境要求:本地需 Python 3.11~3.12,或用 Docker / Windows 免安装版绕过;
--mode precise(v2 内核)为实验特性,正式交付建议先用默认模式。
项目以 AGPL-3.0 协议开源(LICENSE),可自由使用、修改与分发。
pip install pdf2zh后跑一次pdf2zh paper.pdf,几分钟内拿到第一份双语对照论文;参数与服务配置见 docs/ADVANCED.md,集成开发见 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),仅供参考