【问题标题】:Detect if a PDF is created from a scanned document using OCR [pdfbox]检测是否使用 OCR [pdfbox] 从扫描的文档创建 PDF
【发布时间】:2014-06-12 12:22:01
【问题描述】:

我想知道 PDF 是否是使用 OCR 从扫描文档创建的。

为了使扫描文档中的文本可选择,我猜相同的文本是使用透明颜色、特殊字体编写的......

我正在使用 pdfbox,我查看了字体、颜色和许多其他属性,但没有发现任何特别之处。

【问题讨论】:

  • 这取决于 OCR 数据的实际嵌入。人们经常看到使用“不可见”的渲染模式或简单地首先绘制文本然后显示覆盖文字的图像的方法。
  • 您不应该将分辨率添加到您的问题文本中,而应该将其作为答案。
  • 我改成了答案

标签: java pdf ocr pdfbox


【解决方案1】:

在我的例子中,文本渲染模式设置为“既不填充也不描边文本”。

pdfbox代码:

getGraphicsState().getTextState().getRenderingMode() == PDTextState.RENDERING_MODE_NEITHER_FILL_NOR_STROKE_TEXT

【讨论】:

  • 您能否提供所有示例代码,其中 PDF 包含多个页面?提前致谢 ! :)
【解决方案2】:

在大多数情况下,原始图像仍然存在,而 OCRd 文本在下面是不可见的。

因此,一种可能性是找出是否有一张图片用文字覆盖了所有区域。

另一种可能性是查看字体并根据它们做出一些明智的决定

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    • 1970-01-01
    • 2017-03-24
    • 2018-05-17
    • 2011-01-25
    • 2011-09-05
    相关资源
    最近更新 更多