Files
doc_ai_frontend/content/blog/zh/2026-02-15-pdf-formula-issues.md
yoge 99e1314bf9 refact: eliminate blog/docs content overlap
- Delete blog/copy-math-to-word (EN+ZH) — identical to docs/copy-to-word
- Rewrite blog/pdf-formula-issues as narrative troubleshooting story;
  operational steps now link out to docs/pdf-extraction
- Add "Further reading" cross-links: 4 docs → relevant blog posts
- Add "See also" cross-links: 3 blog posts → relevant docs

Docs = product reference; Blog = narrative/use cases/opinions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 16:52:27 +08:00

3.2 KiB
Raw Blame History

title, description, slug, date, tags
title description slug date tags
我试着从教授的 PDF 里提取公式,结果学到了这些 一次真实的 PDF 公式提取经历——以及为什么大多数问题都归结为三个根本原因 pdf-formula-issues 2026-02-15
故障排查
PDF

我试着从教授的 PDF 里提取公式,结果学到了这些

上学期我在啃一份 200 页的讲义 PDF——那种从印刷胶片扫描而来、作为附件发出来、每页都略微倾斜的类型。我想把关键方程提取到自己的笔记里。接下来发生的事让我深刻理解了 PDF 究竟是怎么存储(或者说不存储)数学内容的。

第一个意外:不是所有 PDF 都一样

我天真地以为"有公式的 PDF"就意味着"可以提取的公式"。并非如此。

学术圈里流传着至少三种根本不同的 PDF它们的行为完全不同

数字原生 PDF(由 LaTeX、Word 或排版软件生成)包含真正的矢量数学内容。从这类 PDF 提取速度快、准确率 95% 以上——公式结构本质上已经在那里了。

扫描 PDF 只是打印页面的照片,被包装进一个容器。没有文字层。提取依赖图像识别,准确率完全取决于扫描质量。教授的讲义就是这种。

混合 PDF 是扫描后由 OCR 软件添加文字层的 PDF。质量参差不齐——有时很好有时"文字层"完全是错的。这类 PDF 最难预测。

大多数失败的三个根本原因

经过大量尝试和失败,我发现提取失败几乎总是归结为以下三种情况之一:

1. 分辨率。 扫描时用了 150 DPI 而不是 300 DPI。低分辨率下小符号——下标、撇号、点——只有几个像素宽。模型无法可靠区分 \prime 和一个杂散的污点。提高到 300 DPI 重新扫描,解决了一半以上的问题。

2. 加密。 部分 PDF 有密码保护或内容限制阻止任何工具读取内容流。PDF 看起来打开正常,但没有工具能从中提取。移除密码(在 Preview 中选择"文件 → 导出为 PDF",不勾选密码锁)解决了这个问题。

3. 公式存储为矢量路径。 部分 PDF 生成器将方程绘制为图形而非编码为字符。对任何提取工具来说,这些公式是隐形的——只是抽象的几何图形。唯一的办法是将页面渲染为图像,然后对图像进行视觉识别。

最终有效的方法

对于教授的扫描讲义,有效的工作流是:

  1. 用 Preview 将每页导出为 300 DPI PNG
  2. 将 PNG 上传到 TexPixel
  3. 不到一秒得到干净的 LaTeX

不是我期望的直接处理 PDF 的工作流,但很可靠。图像识别流程不在乎原文件是扫描的还是数字原生的——它只看像素,读取数学内容。

更大的启示

PDF 是展示格式,不是数据格式。它针对外观进行了优化,而不是含义。数学符号在传输过程中尤其容易被损坏——渲染、光栅化、路径转换——以破坏底层结构的方式。

最可靠的信号永远是图像。如果不确定,导出为 PNG让视觉识别来完成工作。


关于 PDF 类型、文件限制以及 TexPixel 支持范围的系统性参考,请查看 PDF 公式提取文档 →