../ writing

都是 PDF,为什么处理方式不一样

都叫 PDF,里面可能是文字,也可能只有一张张图。先弄清这一点,后面的处理才不容易走错。

文件扩展名不等于内容结构

同样是 PDF,有些文件保存了可以提取的文字,有些文件只是扫描图像的集合。前者可以从文档结构中提取文本,后者需要图像文字识别。

OCRASR 提供 PDF、DOCX、TXT 和 Markdown 的本地文档提取能力,文件上限为 100 MB。该入口针对文本内容;扫描 PDF 需要另外走图片 OCR 流程,不能把两者的能力混为一谈。

把结果整理为 Markdown

文档提取的输出面向 Markdown:让识别或解析结果成为可阅读、可整理的内容。TXT 和 Markdown 的处理尤其直接,办公文档则需要从其原有结构中提取信息。

当前实现使用 pypdf 提取 PDF 文本,使用 python-docx 处理 Word 文档,并把 DOCX 表格整理为 Markdown 表格。

PDF / DOCX / TXT / MD
          ↓
      本地文档解析
          ↓
      Markdown 文件

扫描页面 → 图片 OCR → 文字结果

先描述边界,再描述能力

当一个入口叫“文档识别”时,使用者可能自然期待所有 PDF 都能处理。把“文本提取”和“扫描图像 OCR”区分开,有助于选择正确的输入方式。

好的技术说明既要展示能做什么,也要告诉使用者何时应该换一条处理路径。

nextOCRASR 里,本地和云端各做什么