PDFMathTranslate
完整保留排版的 PDF 文档全文双语翻译,支持Google,DeepL,Ollama,OpenAI 翻译
Github地址
https://github.com/Byaidu/PDFMathTranslate
特点
• PDF 文档翻译及双语对照
• 📊 保留公式和图表
• 📄 保留可索引目录
• 🌐 支持多种翻译服务
安装
要求 Python 版本 >=3.8, <=3.12
pip install pdf2zh
使用
命令行中执行翻译指令,在工作目录下生成翻译文档 example-zh.pdf
和双语对照文档 example-dual.pdf
,默认使用 Google 作为翻译服务
翻译完整文档
pdf2zh example.pdf
翻译部分文档
pdf2zh example.pdf -p 1-3,5
使用指定语言翻译
参考 Google Languages Codes, DeepL Languages Codes
pdf2zh example.pdf -li en -lo ja
使用 DeepL/DeepLX 翻译
参考 DeepLX
环境变量构建接入点:{DEEPL_SERVER_URL}/{DEEPL_AUTH_KEY}/translate
•
DEEPL_SERVER_URL
(可选), e.g.,export DEEPL_SERVER_URL=https://api.deepl.com
•
DEEPL_AUTH_KEY
, e.g.,export DEEPL_AUTH_KEY=xxx
pdf2zh example.pdf -s deepl
使用 Ollama 翻译
参考 Ollama
设置环境变量构建接入点:{OLLAMA_HOST}/api/chat
•
OLLAMA_HOST
(可选), e.g.,export OLLAMA_HOST=https://localhost:11434
pdf2zh example.pdf -s ollama:gemma2
使用 OpenAI/SiliconCloud 翻译
参考 SiliconCloud, Zhipu
设置环境变量构建接入点:{OPENAI_BASE_URL}/chat/completions
•
OPENAI_BASE_URL
(可选), e.g.,export OPENAI_BASE_URL=https://api.openai.com/v1
•
OPENAI_API_KEY
, e.g.,export OPENAI_API_KEY=xxx
pdf2zh example.pdf -s openai:gpt-4o
使用正则表达式指定需要保留样式的字体和字符
pdf2zh example.pdf -f "(CM[^RT].*|MS.*|.*Ital)" -c "(\(|\||\)|\+|=|\d|[\u0080-\ufaff])"