使用tesseract 2.04和Java获取文本位置

时间:2011-12-05 19:00:01

标签: java pdf itext ocr tesseract

我正在某些图像中使用Tesseract 2.04执行OCR,现在我要获得文本的精确位置ocearized。但是这个版本不会返回此信息。

我需要这个来生成可搜索的pdf文件。我已经学会了如何在pdf的下层标记文本,但我需要在该文本上标记该位置。 我的第一个想法是在pdf中执行ocr,获取文本的文本和位置,用iText api标记在pdf中。

1 个答案:

答案 0 :(得分:6)

在iText的内部,我们也研究过OCR。并且它是可能的(使用Tesseract)。

的工作流程:

  1. 使用iText
  2. 从pdf中提取所有图像
  3. 使用Tesseract
  4. 提取文本(以及坐标,字体等)
  5. 应用坐标变换(因为tesseract坐标系和iText坐标系不相同)
  6. 向pdf(canvas.beginLayer)
  7. 添加图层
  8. 在此图层中的正确位置绘制所有文字
  9. 您可以做更多优化。一小段建议:

    • 正确的基线
    • 更正字体
    • 正确的拼写错误
    • 估计颜色
    • 估计背景颜色

    这不是一件容易的事。但肯定是可能的。