如何使用Tika解析器/ Java检测pdf是否是扫描文档

时间:2017-02-10 16:09:26

标签: java pdf ocr apache-tika

我正在尝试从pdf文件中提取文本。但在某些情况下,pdf文件是硬文件的扫描副本。

有没有办法可以找到给定的pdf是扫描的文件副本还是普通的pdf文件。

1 个答案:

答案 0 :(得分:0)

Check if a PDF file is a scanned one的可能重复?

无论如何 - 在尝试内容提取之前,Tika的最新版本可以选择使用Tesseract to OCR图像 - 如果您正在使用它并想知道Tika如何解析文档,您可以检查元数据:PDFParser添加{除了通常的org.apache.tika.parser.ocr.TesseractOCRParser之外,{1}}还有X-Parsed-By元数据键。

如果您在运行Tika之前尝试决定是否运行自己的OCR处理,则可能需要预处理PDF(例如pdfimages /其他一些命令行工具或基于PDFBox的解决方案)以确定是否仅包含整页图像(或覆盖页面的较小图像),没有文本操作符,然后可能尝试对它们进行分类以确定它们是否需要OCRing。