当前位置: 首页 > news >正文

两条命令完成PDF翻译:PDFMathTranslate简单指南,公式与排版原样保留

两条命令完成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

一条命令把英文学术PDF丢进去,一两分钟后你会拿到两个新文件:中文版和中文-英文双语版,里面的LaTeX公式原封不动,图表与目录位置不挪一分。这就是开源工具PDFMathTranslate(命令名 pdf2zh)做的事——一个完整保留排版的AI PDF翻译工具,也是本篇指南的主角。

PDFMathTranslate 是什么:保留公式与版式的PDF翻译工具

PDFMathTranslate 做全文翻译,但保留原始版式:正文变成中文,公式、插图、表格、目录和注释保持原样。每份文档会产出两个 PDF——单语版方便速读,双语版适合逐行对照。

它面向需要长期读外文材料的人:查文献的学生、做科研的研究者、啃英文技术文档的工程师,以及要出双语课件的教师。项目入选过 EMNLP 2025 Demo 轨道,功能完全开源免费。

🚀 快速上手:两条命令翻译第一份PDF

前置条件只有一个:Python 版本在 3.11 到 3.12 之间。

先执行下面的命令安装 pdf2zh 命令行工具:

pip install pdf2zh

然后进入待翻译文件所在目录,执行翻译命令:

pdf2zh example.pdf

运行结束后,当前目录会多出一个example-mono.pdf(中文单语版)和example-dual.pdf(中英双语版)。默认走 Google 翻译服务,不需要配置任何 API Key。

其余安装方式压成下表,按需取用:

方式获取方法适合谁
uv 隔离安装pip install uv后执行uv tool install --python 3.12 pdf2zh不想污染系统 Python 环境的开发者
Windows 绿色版从 releases 页下载 win64 压缩包,双击pdf2zh.exe不想装 Python 的用户
Docker 容器docker pull byaidu/pdf2zh后运行镜像团队共享、服务器部署
图形界面安装后执行pdf2zh -i,浏览器自动打开新手
Zotero 插件安装社区插件 zotero-pdf2zh文献管理流程用户

图形界面里上传文件、选目标语言、点按钮即可,详见 docs/README_GUI.md。

功能实战:4个典型用法

读外文文献:先译关键页,再译全文

一篇 40 页的论文全译需要时间。用-p先指定页码,把摘要和方法部分翻出来确认公式渲染正常,再跑全文:

pdf2zh paper.pdf -p 1-3,5

看一组真实论文的翻译前后对比:公式与网络图逐像素一致,正文换成了中文。

啃技术文档:复杂版式切精准模式

代码块、特殊符号密集的文档,切换到实验性 v2 内核可获得更稳的版式识别:

pdf2zh manual.pdf --mode precise

该模式在隔离环境中运行,参数说明见 docs/ADVANCED.md。

做双语教学材料:dual.pdf 直接可用

中英双语版默认生成,逐行对照、公式位置完全一致,可以直接发给学生;配合-li/-lo还能换成英译日等其他语对。

批量翻译整个文件夹

不用逐个复制文件,一条命令处理目录下所有 PDF:

pdf2zh --dir ./papers/

命令速查表

命令/参数作用示例
-i启动浏览器图形界面pdf2zh -i
-p只译指定页码,支持区间与枚举pdf2zh a.pdf -p 1-5,8
-li/-lo指定源语言与目标语言pdf2zh a.pdf -li en -lo ja
-s选择翻译服务(Google/DeepL/OpenAI/Ollama 等)pdf2zh a.pdf -s deepl
-t并发翻译线程数pdf2zh a.pdf -t 4
-o指定输出目录pdf2zh a.pdf -o out/
-f用正则排除代码、公式字体等内容不译pdf2zh a.pdf -f "(MS.*)"
--mode precise实验性 v2 精准翻译内核pdf2zh --mode precise a.pdf
--dir批量翻译整个文件夹pdf2zh --dir ./papers/
--config加载 JSON 配置文件复用参数pdf2zh --config c.json
--ignore-cache忽略翻译缓存,强制重新翻译pdf2zh a.pdf --ignore-cache

完整服务列表与每个参数的说明见 docs/ADVANCED.md。

原理简述:4个步骤,公式为什么不动

  1. 布局检测:内置 DocLayout-YOLO 视觉模型逐页扫描,标出正文、公式、图片、表格、目录各在哪个区域。
  2. 元素分类:正文文本进入翻译队列,公式、代码、图片被标记为"不碰"。
  3. 内容翻译:文本按段拆分,交给在线翻译服务或本地大模型,多线程并行处理。
  4. 格式重建:译文按原位置回填到页面,生成单语与双语两个 PDF。

整条链路在 pdf2zh/ 源码目录中,布局检测与转换逻辑分别在 pdf2zh/doclayout.py 和 pdf2zh/converter.py。

⚠️ 避坑指南

以下都是高频卡点,解法现成:

  1. 首次运行卡在模型下载:程序依赖 DocLayout-YOLO ONNX 模型,网络不佳时设置环境变量HF_ENDPOINT=https://hf-mirror.com(PowerShell 写$env:HF_ENDPOINT="https://hf-mirror.com")后重试。
  2. Windows 的 .exe 打不开:缺 VC++ 运行库,安装vc_redist.x64.exe再试。
  3. Docker 拉不到镜像:Docker Hub 访问受限时改用官方 ghcr 镜像docker pull ghcr.io/byaidu/pdfmathtranslate
  4. 找不到翻译结果:文件生成在你执行命令的目录里,加-o out/可以固定输出位置。
  5. 7860 端口被占用:启动图形界面时加--serverport 7861换端口。
  6. precise 模式是实验性的--mode precise依赖pdf2zh_next子模块(见 pdf2zh/kernel/ 目录),正式交付场景建议先用默认 fast 模式。
  7. 二次开发注意:官方 Python/HTTP API 已暂时弃用,程序化接入请参考 docs/APIS.md 中的 BabelDOC 后端方案。

常见问题

Q:必须付费或配置 Key 吗?A:默认 Google 服务免 Key、免费。用 DeepL、OpenAI 需先设置对应环境变量;Ollama 本地模型则不需要 Key,也不需要联网。

Q:能完全离线使用吗?A:可以。选择 Ollama 服务并跑本地模型,翻译过程全程不出内网;但首次仍需联网下载一次布局检测模型。

Q:一份10页的论文要多久?A:一般 1-2 分钟。瓶颈通常在翻译服务响应,加-t多线程可以进一步提速。

Q:重复翻译同一份文件会更快吗?A:会。相同文本命中翻译缓存,重跑时直接跳过已译部分;想强制全量重译就加--ignore-cache

Q:支持哪些 Python 版本?A:仅 3.11 和 3.12。其他版本请安装对应 Python,或直接使用 Windows 绿色版。

现在开始

克隆仓库,动手试译或参与贡献:

git clone https://gitcode.com/GitHub_Trending/pd/PDFMathTranslate

先用默认设置翻一篇你手头积压的论文,拿到公式完好无损的双语 PDF 之后,再按自己的场景调服务、调线程。

核心关键词:PDF翻译、PDFMathTranslate、数学公式保留、学术双语论文、pdf2zh

长尾关键词:学术论文中文翻译工具、保留排版的PDF翻译、LaTeX公式翻译工具、批量PDF翻译命令、PDFMathTranslate安装教程、pdf2zh图形界面使用、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

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

http://www.cnnetsun.cn/news/4359656.html

相关文章:

  • EnvHarness与SPADE实战:开发环境标准化与代码安全扫描
  • RVC部署完整指南:从安装到出声的两条路径
  • AI辅助开发:用HTML5 Canvas构建坦克大战关卡编辑器
  • 乒乓球编排软件实战经验:从赛程生成到临场调度全解析
  • 狸窝全能视频转换器免安装版:轻量便携的格式转换利器
  • OpenClaw + Ollama 开发者分享文档
  • 动力滚筒线和无动力滚筒线有什么区别?怎么选更划算?实测选型指南
  • 萨博隐身超音速无人战斗机概念:系统架构与关键技术全解析
  • AI模型认知能力评估:六个原则帮你避开评测陷阱
  • 主动RIS辅助ISAC系统联合波束成形MATLAB仿真实现详解
  • Pandas数据清洗与整形实战:Airbnb房源数据完整处理指南
  • 奇安信服务端应用开发面试复盘:四方向底层逻辑与核心能力解析
  • AI原生开发推理成本控制:从部署到调优的实战指南
  • 告别百万域名库:用eBPF动态DPI让软路由流量识别更高效
  • GSDML文件全解析:从文件名到PROFINET设备组态实战
  • 无刷电机短路炸机根因解析:从原理到排查预防的完整指南
  • Keil MDK中.s启动文件详解:从复位到main的执行流程
  • Koishi可逆插件(随时更新ing)
  • 汽车电机控制器与工业液冷电源:跨界技术复用与创业路径分析
  • 【2014-11-24】《GNU_makefile中文手册.pdf》阅读笔记:执行过程
  • 4核8G5M年付仅590元?天翼云S6实测:国家队下场,这波“羊毛”有点硬核
  • 车载激光雷达卷向机器人,禾赛速腾真的赚钱了吗?
  • 零售电商 AI 项目失败率超 80%:五大根源与工程化落地路径
  • 读数据可视化20网络数据
  • 未婚公证哪里办理?证天下零跑腿攻略,动动手就能轻松搞定
  • 《幻兽帕鲁》联机录像全解析:回放、同步与后期处理
  • 东方非想天则Rep复盘指南:从录像拆解到训练计划
  • 店铺管理怎么提升?从人员管理到数据驱动的完整方法
  • 固定资产管理之—RFID标签的分类
  • 基于 LSM‑Tree(LSMT)本科毕业设计选题