PDF 翻译为什么容易格式错乱?

PDF 看起来像一页排好版的文档,内部却不一定保存着连续的段落。很多 PDF 只记录“在某个坐标画一个字符”,阅读顺序、段落关系和表格结构需要重新推断。翻译后的文字长度又会改变,原来的文本框未必放得下。本文从 PDF 的文本对象、坐标、字体和版面回填解释格式错乱的原因。

PDF 不是 Word 文档

Word、HTML 等格式通常包含标题、段落、列表和表格等语义结构。PDF 的首要目标是让页面在不同设备上保持相同外观,因此更接近一组绘制指令。

一页 PDF 可能记录:

使用字体 F1 把字号设为 10 移动到坐标 (72, 680) 绘制字符串 "System Requirements"

人眼看到的是一行标题,程序拿到的可能只是一组带坐标的字符。有些生成器按单词保存,有些按字符保存,还有些会把显示顺序打乱,只要最终画面正确即可。

这意味着“提取全部文本,再逐段翻译”并不够。程序还要回答:哪几个文本对象属于同一行?哪几行组成一个段落?双栏页面应该先读左边还是右边?图注和正文是什么关系?

阅读顺序是推断出来的

双栏论文是典型例子。简单的提取器可能按纵坐标排序,得到:

左栏第 1 行 右栏第 1 行 左栏第 2 行 右栏第 2 行

正确阅读顺序却应该先读完整个左栏,再读右栏。页面中如果还有页眉、脚注、侧边栏和浮动图片,排序会更难。

常见的版面分析会结合文字坐标、间距、对齐方式、字体大小和分隔线,把页面划分为区域,再推断区域之间的阅读关系。表格还需要识别行列,而不能把每个单元格当成普通段落。

翻译后文字长度会变化

即便提取顺序完全正确,回填仍可能失败。不同语言表达同一含义所需的字符数不同。英文按钮翻译成德语后可能明显变长,英文句子翻译成中文后字符数可能减少,但字体的实际宽度不一定按字符数同比变化。

原文文本框只有固定宽度和高度。译文超出时,系统通常只能选择:

  • 缩小字号;

  • 增加行数;

  • 扩大文本框;

  • 调整相邻元素;

  • 截断或溢出;

  • 重建整页布局。

每种选择都有代价。字号缩得太小会破坏可读性;扩大文本框可能压住图片;整页重排又会失去原文页码和图文位置。所谓“保留格式”,实际更像是在可读性、位置对应和页面稳定之间取舍。

字体问题不只是“换个字体”

PDF 可以嵌入完整字体,也可以只嵌入实际使用到的字符子集。原文只包含拉丁字母时,内嵌字体很可能没有中文字形。翻译后继续使用该字体,会出现方框、空白或乱码。

替换字体后,字宽、行高和基线都会改变。同样是 10 pt,不同字体占用的实际空间并不相同。粗体、斜体和数学字体还需要分别处理。

复杂脚本更难。例如阿拉伯文涉及从右到左的排版和字形连接,印地语等文字需要正确的字形塑形。仅把 Unicode 字符逐个画到页面上,视觉结果可能是错的。

字符映射也是问题。有些 PDF 能正确显示,却没有可靠的 Unicode 映射。复制文字时出现乱码,通常意味着提取器无法从字形编码恢复原字符。

表格、公式和代码块为什么容易坏

表格在 PDF 中可能只有若干文字坐标和线条,未必存在“表格”对象。翻译后单元格文字变长,列宽不变,就会换行或覆盖相邻列。合并单元格、无边框表格和跨页表格更难恢复。

数学公式不应当按普通文本翻译。变量名、上下标、希腊字母和运算符的位置关系承载含义。公式区域通常应识别后保留,周围说明文字再翻译。

代码块同样需要保护。关键字、函数名、命令参数和路径不应被自然语言模型随意改写。代码注释可以翻译,但要保持缩进、换行和注释符号。

扫描版 PDF 是另一类问题

如果页面只是图片,根本没有可提取的文本层。流程需要先做 OCR,从像素中识别字符及位置,再进入版面分析和翻译。

OCR 会带来新的误差:0O1l混淆,低分辨率小字丢失,倾斜扫描造成行识别错误。此时版式错乱可能不是回填造成的,而是最开始的识别结果就不完整。

可以先尝试选中文字或搜索页面内容。完全无法选择,不代表一定是扫描件;但它是一个值得进一步检查的信号。

如何评价“保留格式”

不要只看第一页是否漂亮。技术文档更应该检查:

  1. 标题层级和阅读顺序;

  2. 表格的行列对应;

  3. 图片与图注是否匹配;

  4. 页眉、页脚和脚注是否干扰正文;

  5. 公式、代码和变量是否被误改;

  6. 字体是否覆盖目标语言;

  7. 长段落是否溢出或被缩得过小。

在线整份翻译工具通常会尝试保留页面结构。例如 PDFTranslator 对外提供保留表格、图片和页面布局的 PDF 翻译结果,但实际效果仍取决于源文件质量和版式复杂度。重要文档需要逐页抽查。

PDF 翻译的难点不只是语言转换,而是先从绘制指令中恢复文档结构,再把长度不同的译文放回有限空间。文本对象、阅读顺序、字体覆盖、表格和扫描质量都会影响结果。评价工具时,应使用与真实业务相近的复杂页面,而不是只测试纯文字文件。