乐于分享
好东西不私藏

我做了一个复杂 PDF 翻译工具,想解决公式、图片和长文档翻译

我做了一个复杂 PDF 翻译工具,想解决公式、图片和长文档翻译

我做了一个复杂 PDF 翻译工具,想解决公式、图片和长文档翻译的问题

这几个月,我利用业余时间做了一个文档翻译工具,叫 TransDocAI。

它目前支持 PDF、Word 和 PPT 文档翻译,也可以把部分 PDF 处理成更适合阅读的双语网页。

网站地址:

https://transdocai.com/

最开始做这个工具,并不是因为市面上没有翻译软件。

恰恰相反,现在可以翻译文字的工具已经非常多了。Google 翻译、DeepL,以及各种大模型,都能把一段英文翻译得不错。

但在实际工作和学习中,我发现:

把一段文字翻译好,和把一份复杂文档翻译好,是两件完全不同的事。

尤其是 PDF。


一、为什么复杂 PDF 翻译仍然很麻烦?

很多人拿到一份英文资料后,会直接把 PDF 上传到某个翻译平台。

如果文件比较简单,只有普通文字,结果通常还可以。

但如果 PDF 中包含下面这些内容,问题就很容易出现:

  • 数学公式和化学公式;

  • 表格和跨页表格;

  • 设备图、流程图和示意图;

  • 双栏排版;

  • 页眉、页脚和脚注;

  • 特殊字体和符号;

  • 扫描图片;

  • 几十页甚至几百页的长文档。

常见结果包括:

  • 文字顺序错乱;

  • 公式变成乱码;

  • 图片直接丢失;

  • 表格结构被打散;

  • 一句话被拆成很多行;

  • 页眉页脚被反复当作正文翻译;

  • 文件太长,翻译到一半失败;

  • 翻译结果有文字,但几乎无法阅读。

这并不完全是翻译模型的问题。

很多时候,真正困难的是翻译之前的步骤:

怎样从 PDF 中正确提取文字、公式、图片和文档结构。


二、PDF 其实不是“固定版式的 Word”

我们平时打开 PDF,看到的是一页一页排好的文字和图片,所以很容易觉得 PDF 和 Word 差不多。

但从程序处理的角度看,很多 PDF 并没有清晰的“标题”“正文”“表格”或者“段落”结构。

有些 PDF 保存的只是:

  • 某个坐标放一个字;

  • 另一个坐标放一张图片;

  • 再用很多线条组成一个表格;

  • 公式可能是字体,也可能是一张图片。

人眼可以很自然地理解这些内容,但程序需要先重新判断:

  • 哪些文字属于同一个段落;

  • 哪一部分是标题;

  • 哪些线条组成表格;

  • 图片应该插入到哪里;

  • 哪些内容不应该被翻译;

  • 双栏页面应该先读左边还是右边。

因此,复杂 PDF 翻译通常不只是“调用一次翻译接口”。

它更像是一条完整的处理流程:

文档解析 → 结构识别 → 内容切分 → 翻译 → 格式重建 → 结果检查

其中任何一个环节出现问题,最后的结果都可能很难使用。


三、我为什么开始做这个工具?

我本身从事化工流程模拟、工业软件和工程项目相关工作。

工作和学习中经常会接触英文技术资料,例如:

  • 软件使用手册;

  • 化工工艺资料;

  • 设备说明书;

  • 学术论文;

  • 带有公式和流程图的技术 PDF;

  • 几十页甚至几百页的英文文档。

这类资料通常不只是文字多,文档结构也比较复杂。

有时为了翻译一份 PDF,需要先把它转换成 Word,再处理乱码、段落错位和公式丢失。即使花了很多时间整理,最后的结果也不一定理想。

后来,大语言模型的翻译能力越来越强,我开始思考:

能不能做一个更适合长文档和技术文档的翻译工具?

于是,我利用业余时间开始开发 TransDocAI。

刚开始我以为,主要工作只是把文档中的文字提取出来,然后交给大模型翻译。

真正开始开发后才发现,翻译反而不是最困难的部分。

更麻烦的是:

  • 怎样识别不同类型的 PDF;

  • 怎样切分长文档,又不破坏上下文;

  • 怎样避免公式被错误翻译;

  • 怎样保留图片;

  • 怎样处理翻译失败和任务中断;

  • 怎样让几十页的翻译结果仍然容易阅读;

  • 怎样在配置有限的服务器上处理大文件。

这个工具也因此经历了很多次修改和重做。

PDF分析功能


四、目前提供了哪些翻译方式?

不同 PDF 的结构差异很大,因此很难用一种处理方式解决所有问题。

目前,TransDocAI 主要提供几种不同的文档处理思路。

1. 普通文档翻译

适合 Word、PPT,以及结构相对简单的 PDF。

这种方式更注重:

  • 正文翻译;

  • 段落完整性;

  • 文档可编辑性;

  • 较快的处理速度。

对于原本就是 Word 或 PPT 的文件,通常建议直接上传源文件,不要先转换成 PDF。

因为 Word 和 PPT 本身保留了更清晰的段落、文本框和页面结构,程序更容易正确处理。


2. PDF 双语阅读版

对于论文、技术手册和长篇资料,我增加了一种双语网页阅读方式。

它会尝试识别 PDF 中的:

  • 标题层级;

  • 正文段落;

  • 图片;

  • 表格;

  • 部分公式;

  • 章节目录。

然后把原文和译文整理成适合浏览器阅读的双语页面。

比如下面一个30mb,包括大量公司,设备图片,表格和OCR图片的长文档

这种方式不一定完全还原原 PDF 的页面布局,但阅读长文档通常更加方便。

例如,用户可以:

  • 对照原文和译文;

  • 按目录跳转章节;

  • 搜索关键词;

  • 在电脑或手机浏览器中阅读;

  • 下载离线阅读版本。

【此处插入“双语网页阅读效果”截图】


3. 复杂 PDF 结构化处理

对于带有大量图片、公式、设备图和复杂版式的 PDF,系统会尝试使用更完整的文档解析流程。

能够直接识别的内容,会整理为结构化文字。

暂时无法可靠解析的公式、图片或者复杂区域,则尽量保留为原图,避免直接变成乱码。

这种方式处理速度会更慢,也会占用更多服务器资源,但对于部分复杂技术资料,结果会比简单提取文字更完整。


五、一次复杂化工 PDF 的实际测试

最近我测试了一份大约 24MB 的英文技术 PDF。

这份资料中包含:

  • 大量化工设备图;

  • 复杂公式;

  • 多级标题;

  • 表格;

  • 流程说明;

  • 多种特殊符号。

最开始,我尝试把 PDF 转换成 Word 后再翻译。

转换后的 Word 虽然保留了大致页面,但部分公式和特殊字符出现了明显乱码,有些图片附近的文字顺序也发生了变化。

【此处插入“PDF 转 Word 后乱码”截图】

之后,我使用结构化解析和双语阅读方式重新处理。

结果并不是百分之百完美,但相比简单转换,出现了几个比较明显的改善:

  • 章节结构更加清楚;

  • 大部分正文顺序正常;

  • 能识别的公式得到保留;

  • 无法可靠识别的复杂内容以图片形式保留;

  • 设备图和正文之间的对应关系更加清楚;

  • 翻译结果更适合连续阅读。

【此处插入“结构化双语阅读结果”截图】

这次测试也让我更加确认:

对于复杂 PDF,最重要的不一定是完全复制原来的每一页,而是尽量保留信息,并重新组织成可以正常阅读的结果。


六、这个工具目前并不完美

作为个人开发的工具,TransDocAI 目前还有不少局限。

例如:

扫描版 PDF

如果整份 PDF 实际上都是扫描图片,就需要先进行文字识别。

扫描质量较差、页面倾斜或者字符模糊时,识别结果可能不准确。

极复杂表格

普通表格相对容易处理,但跨页表格、合并单元格很多的表格,仍可能出现结构错乱。

特殊公式

部分公式可以被识别,也有一些只能保留为原图。目前还无法保证所有公式都能重新转换成可编辑格式。

原版式完全还原

如果要求译文和原文件在每一个位置都完全一致,开发难度非常高。

文字翻译后长度会发生变化,中文和英文的排版也不相同,因此复杂版式很难做到完全不变。

服务器资源有限

复杂 PDF 解析比较消耗内存和计算资源。

目前网站仍处于早期阶段,遇到多人同时处理大文件时,任务可能需要排队。

这些问题我不想回避。

相比宣传“任何 PDF 都能完美翻译”,我更希望逐步说明:

  • 哪些文档适合处理;

  • 哪些模式效果更好;

  • 哪些情况可能失败;

  • 怎样选择更合理的处理方式。


七、我希望它最终成为怎样的工具?

我并不想只做一个把文字交给大模型的简单外壳。

我更希望它逐渐成为一个面向长文档的处理工具,能够解决:

  • PDF、Word、PPT 长文档翻译;

  • 技术资料双语阅读;

  • 公式、图片和表格保留;

  • 术语统一;

  • 行业翻译模板;

  • 文档格式转换;

  • 文档拆分、合并和整理;

  • 翻译结果导出和离线阅读。

当然,这些功能不可能一次全部完成。

PPT和word翻译

目前最重要的,还是先把 PDF、Word 和 PPT 的基础翻译体验做好,并通过真实文档不断测试和改进。


八、邀请你参与测试

TransDocAI 目前仍然处于测试和持续改进阶段。

如果你手上有下面这些资料,可以尝试使用:

  • 英文论文;

  • 产品手册;

  • 技术说明书;

  • 化工、机械、计算机等专业资料;

  • 长篇 Word 文档;

  • 英文 PPT;

  • 带有图片和公式的 PDF。

使用地址:

https://transdocai.com/

目前提供一定的免费试用额度,内测阶段有免费访问码领取。

如果翻译效果不错,欢迎告诉我哪些地方对你有帮助。

如果出现乱码、图片丢失、任务失败或者排版问题,也欢迎把文档类型、页数和问题截图发给我。

对一个早期工具来说,真实文件和真实反馈,比继续闭门增加功能更有价值。


写在最后

做这个工具以后,我越来越意识到:

AI 已经显著提高了文字翻译的质量,但复杂文档处理仍然有很多问题没有解决。

PDF 解析、文档结构识别、公式保留、图片处理和长任务稳定性,每一项都比我最开始想象得更复杂。

TransDocAI 现在还只是一个很早期的个人项目。

它可能会出现问题,也不一定适合所有文件。

但如果它能够帮助一些人更方便地阅读一份英文论文、技术手册或者专业资料,那么这段时间的开发就有了实际价值。

以后我也会在这个公众号继续分享:

  • 不同类型 PDF 的真实翻译测试;

  • 复杂文档处理过程中遇到的问题;

  • AI 翻译和文档解析相关技术;

  • 一个个人开发者制作 AI 工具的过程;

  • 用户反馈和产品改进记录。

这是这个公众号重新开始更新的第一篇文章。

也是 TransDocAI 被更多人看到的第一步。

相关学习资料