BabelDOC PDF 翻译教程保留公式与版式生成中英对照文档【免费下载链接】BabelDOCYet Another Document Translator项目地址: https://gitcode.com/GitHub_Trending/ba/BabelDOCBabelDOC 是一个开源 PDF 翻译工具项目英文自述为 Yet Another Document Translator。你给它一份数字版英文 PDF它会还你两类文件中英对照 PDF 和单语中文 PDF。翻译前先解析文档结构再重新排版公式和多栏布局在译文中基本保持原样。适合需要把论文、技术文档读成中文的人白底黑字的扫描版 PDF 也能处理。能处理哪类 PDF四个场景与边界数字版学术论文文字可选中输入是论文、讲义这类矢量 PDF输出为对照版加单语版公式、图表原样保留。边界跨栏、跨页段落的完整支持还在项目计划中单页过大的页面会被直接跳过。需要术语统一的技术文档输入含大量专有名词的 PDF配合 CSV 术语表指定关键译法输出是全文同一术语译法一致。扫描版 PDF输入是白底黑字、清晰度尚可的扫描页需要开启 OCR 兼容参数。效果直接取决于扫描清晰度彩色或低对比度页面不适合。只翻部分页或大文档分块用页面参数只翻指定页如--pages 1-5,10用分块参数把长文档拆成若干部分分别翻译完成后自动合并回一份文件。第一次使用用两条命令跑通对照文件如果机器上还没有 uv一个 Python 包管理工具先装 uv然后一条命令安装 BabelDOCuv tool install --python 3.12 BabelDOC babeldoc --help想从源码跑的话克隆仓库后用 uv 执行git clone https://gitcode.com/GitHub_Trending/ba/BabelDOC cd BabelDOC uv run babeldoc --help翻译本身依赖大语言模型BabelDOC 支持 OpenAI 兼容接口本地 Ollama 之类的服务也可以指向。默认方向是英译中最小命令如下babeldoc --openai --openai-model gpt-4o-mini --openai-base-url https://api.openai.com/v1 --openai-api-key your-api-key --files paper.pdf关键参数只看三个--files要翻译的 PDF可多次指定实现多文件--lang-in/--lang-out源语言与目标语言默认 en → zh英译中不用改--output输出目录不指定时写入当前工作目录跑完打开输出目录你会看到一份双语 PDF默认带水印--watermark-output-modeno_watermark可去掉和一份单语中文 PDF。先打开对照版翻到公式最多的一页确认版式正常再继续往下调参数。另注意README 说明这套命令行接口主要面向调试与集成需要图形界面时可用 README 中提到的自部署 WebUI 项目。每个能力在最终文件里的体现BabelDOC 不是逐字替换PDF 先被解析成中间表示一套记录各文本块位置与样式的统一结构在这套结构上完成翻译最后再渲染出新的 PDF。流程各环节可以在源码中核对布局识别在 babeldoc/docvision/中间表示与翻译、排版阶段在 babeldoc/format/pdf/document_il/。结构解析布局模型区分标题、正文、脚注、公式区域。效果译文里各区块位置不挪动多栏页面仍按正确顺序阅读。公式保护公式文本先被标记翻译阶段不会拆散送入模型。效果公式渲染与原文一致文档里公式字体特殊时可加--formular-font-pattern精确标记。术语一致默认自动从文档中提取候选术语--no-auto-extract-glossary可关闭也可用--glossary-files追加 CSV 术语表。效果同一术语全文译法统一。排版重排翻译后按原文属性自动选择字体与换行。效果中文不断词、不跨行拆散字体风格接近原文。典型任务怎么做任务一把一篇论文翻成中英对照目标拿到可逐页对照阅读的双语 PDF公式区域不串位。准备数字版论文 PDF一个可被 OpenAI 兼容接口调用的模型。操作直接用上文最小命令文档超过 50 页时加--max-pages-per-part 50分块翻译。检查在对照版里抽查公式最多的一页确认公式区与正文不重叠个别阅读器显示异常时用--enhance-compatibility重跑一次再对比。任务二用术语表统一译法目标产品名、函数名等术语全文固定译法。准备一个 CSV 文件含source源语词条、target目标语词条、tgt_lng可选如 zh-CN三列格式样例见 docs/example/demo_glossary.csv。操作运行时追加--glossary-files terms.csv翻译中命中术语时该表会随提示词交给模型。检查在译文里全文搜索几个关键术语确认译法没有前后不一致。任务三处理扫描版 PDF目标让扫描文档得到可读的中文译文。准备页面为白底黑字、扫描较清晰该参数只在这个前提下有效。操作运行时追加--ocr-workaround译文下方加白色块盖住原文文字统一为黑色也可以加--auto-enable-ocr-workaround让程序检测到大量扫描页后自动开启。检查看译文的页面背景原文是否被白块盖住、新文字是否清晰扫描本身模糊的参数救不了建议先换更清晰的源文件。卡住时先看哪里译文空白或文字选不中先查原 PDF 的文字能否选中随手复制一段试试。再试加--disable-rich-text-translate简化翻译输入。仍不行换--enhance-compatibility整体开启兼容模式。公式变形、乱码先查公式是否为矢量文本可复制选中。再试加--formular-font-pattern指明公式字体或加--remove-non-formula-lines清理干扰段落的装饰线。表格错位表格翻译目前是实验功能--translate-table-text默认关闭复杂表格建议保留原文人工核对译文正文。某个阅读器里页面错乱先试--enhance-compatibility注意其中--skip-clean会让输出文件明显变大。速度太慢确定不是扫描件就加--skip-scanned-detection大文档用--max-pages-per-part分块并发可调--pool-max-workers与--qps。启动时报模块缺失、模型或字体下载失败先查网络用babeldoc --warmup可只下载并校验全部依赖。断网环境先在联网机器打包再带到目标机器恢复babeldoc --generate-offline-assets ./offline_pkg/ babeldoc --restore-offline-assets ./offline_pkg/仍解决不了时到项目 Issue 提交入口见 README.md 的贡献说明附上可复现的 PDF 样本和完整命令。完整参数清单以 README 为准。继续深入处理流程逐阶段讲解解析、段落识别、公式、排版等docs/ImplementationDetails/支持的语言列表及连字差异docs/supported_languages.md翻译引擎源码babeldoc/translator/术语表加载逻辑babeldoc/glossary.py先拿一份几页的短 PDF 跑通最小命令确认对照文件打开正常后再叠加术语表、页面范围这些参数。【免费下载链接】BabelDOCYet Another Document Translator项目地址: https://gitcode.com/GitHub_Trending/ba/BabelDOC创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考