在 Java 中使用 GroupDocs.Parser OCR 从 PDF 提取文本

在现代文档处理流水线中,快速可靠地 extract text from PDF java 至关重要。无论您是需要数字化历史纸质档案,还是构建必须从定义区域 read image text java 的发票读取服务,GroupDocs.Parser 的 OCR 引擎都为您提供了一种简洁、可编程的方式。本指南将带您完成库的安装、为特定矩形配置 OCR,以及错误处理,以确保您的应用保持稳健。

快速答案

  • What does “extract text from PDF” mean? 它将扫描 PDF 的可视内容转换为可搜索、可编辑的文本。
  • Which Java library provides OCR? 使用内置 Aspose OCR 连接器的 GroupDocs.Parser。
  • Is a license required for production? 是——在测试时使用免费试用版,然后获取付费许可证用于部署。
  • Can OCR be limited to a region? 当然;将 Rectangle 传递给 OcrOptions 以仅针对所需区域。
  • Do I need special error handling? 是——在 OCR 调用周围使用 try‑catch 块,以在页面损坏时保持应用稳定。

什么是 extract text from PDF java?

Extract text from PDF java 是将光学字符识别(OCR)应用于基于图像的 PDF 页面,使字符变为机器可读文本的过程。这使得在 Java 应用程序中能够进行全文搜索、索引以及下游数据提取,允许开发者以编程方式分析和操作文档内容。

为什么在 Java 中使用 GroupDocs.Parser 进行 OCR?

GroupDocs.Parser 支持 50+ 输入和输出格式,并且能够在不将整个文件加载到内存中的情况下处理数百页的 PDF,当您将 OCR 限制在矩形区域时,可实现高达 40 % 的速度提升。它与 Aspose OCR 引擎的无缝集成意味着您可直接获得高精度的识别,尤其针对常见的拉丁语系语言。

前提条件

  • Java Development Kit 8 或更高版本。
  • GroupDocs.Parser 库 – 通过 Maven 安装或直接下载。
  • 对 Java try‑with‑resources 和异常处理有基本了解。

为 Java 设置 GroupDocs.Parser

Maven 安装

将仓库和依赖添加到您的 pom.xml 中:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/parser/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-parser</artifactId>
      <version>25.5</version>
   </dependency>
</dependencies>

直接下载

或者,从 GroupDocs.Parser for Java releases 下载最新版本。

许可证获取

先使用免费试用版或请求临时许可证以获取完整功能。生产环境请购买永久许可证。

基本初始化和设置

添加库后,您即可使用其 OCR 功能。

实施指南

如何使用定义的矩形提取扫描的 PDF 文本

针对特定区域可以提升速度和准确性,尤其当您只需从已知区域 read image text java 时。

直接答案: 使用启用 OCR 设置的 Parser 加载 PDF,定义一个包含所需文本的 Rectangle,然后调用 extractText —— 整个操作只需两到三行代码即可完成,并返回识别后的字符串。

步骤 1:配置 OCR 设置

ParserSettings 是中心配置对象,用于告知 GroupDocs.Parser 使用哪个 OCR 引擎。

ParserSettings settings = new ParserSettings(new AsposeOcrOnPremise());

步骤 2:初始化解析器

Parser 是所有文档读取操作的入口点。

try (Parser parser = new Parser("YOUR_DOCUMENT_DIRECTORY", settings)) {
    // Proceed to define OCR area and extract text.
}

步骤 3:定义 OCR 区域

Rectangle 表示页面上的矩形区域,由其 X/Y 起点以及以像素为单位的宽度/高度定义。

OcrOptions ocrOptions = new OcrOptions(new Rectangle(0, 0, 400, 200));

该矩形从左上角 (0,0) 开始,宽度为 400 像素,高度为 200 像素。

步骤 4:设置文本选项

OcrOptions 允许您仅对已定义的矩形启用 OCR,页面其余部分保持不变。

TextOptions options = new TextOptions(false, true, ocrOptions);

false 禁用语言特定限制,而 true 启用 OCR 区域。

步骤 5:提取文本

extractText 返回指定页面和区域的 OCR 处理后字符串。

try (TextReader reader = parser.getText(options)) {
    String resultText = reader == null ? "Text extraction isn't supported" : reader.readToEnd();
    // Use extracted text as needed.
}

步骤 6:OCR 处理中的错误处理

将整个操作包装在 try‑catch 块中,以捕获任何问题,例如不受支持的图像格式或内存压力。

try {
    // Include main OCR processing logic here (refer to previous section).
} catch (Exception ex) {
    System.out.println("An error occurs: " + ex.getMessage());
}

即使 OCR 引擎遇到意外格式,也能确保您的应用保持稳定。

实际应用

  1. Invoice processing – 自动从扫描的发票中提取关键字段。
  2. Document digitization – 将传统纸质档案转换为可搜索的 PDF。
  3. Data‑entry automation – 通过从表单中读取 image text java,消除手动输入。

性能考虑因素

  • Resource usage – 监控内存,尤其是处理大型 PDF 时;GroupDocs.Parser 懒惰地处理页面,以保持堆内存占用低。
  • Java memory management – 使用 try‑with‑resources(如示例所示)及时关闭流。
  • Batch processing – 在可能的情况下将 OCR 并行化处理多个文档;该库对只读操作是线程安全的。

常见问题及解决方案

问题解决方案
大文件的内存不足错误将页面分成更小的批次处理;如有需要,增加 JVM 堆大小 (-Xmx2g)。
OCR 准确率低将源图像 DPI 提高到 300 以上,或在 ParserSettings 中提供语言提示。
不支持的文件格式确认文件是受支持的 PDF 或图像类型;先将不支持的格式转换为 PNG。

常见问答

Q: What is OCR in the context of Java development?
A: 光学字符识别(OCR)将文本图像转换为机器编码字符,GroupDocs.Parser 提供了一个 Java 友好的 API,无需外部本机依赖即可实现此功能。

Q: How do I define a rectangular area for OCR extraction?
A: 创建具有所需 X、Y、宽度和高度的 Rectangle 对象,然后在调用 extractText 时将其传递给 OcrOptions。

Q: What are common errors during OCR processing, and how can I handle them?
A: 错误包括不受支持的格式或配置错误;始终在 OCR 调用周围使用 try‑catch 块并记录异常细节。

Q: Can I use GroupDocs.Parser without a license?
A: 可使用免费试用版进行评估,但生产部署需要许可证版本。

Q: How can I optimise OCR performance in Java applications?
A: 将 OCR 限制在必要区域,跨文档复用 ParserSettings,在处理大量文件时采用并行批处理方式运行 OCR。

资源


最后更新: 2026-09-02
测试版本: GroupDocs.Parser 25.5
作者: GroupDocs

相关教程