如何使用 GroupDocs.Parser OCR 提取 java 图像到文本
在本教程中,您将了解如何通过将 OCR 与 GroupDocs.Parser 库集成来 提取 java 图像到文本。您将看到如何配置 Aspose OCR 连接器、获取精确的文本坐标,并在发票处理、可搜索档案和 UI 覆盖等实际场景中应用结果。
快速答案
- “java 图像到文本”是什么意思? 这是在 Java 应用程序中使用 OCR 将图像文件转换为可搜索、可编辑文本的过程。
- 哪个库为 Java 提供 OCR? 结合 Aspose OCR 连接器的 GroupDocs.Parser。
- 我需要许可证吗? 免费试用可用于评估;生产使用需要永久许可证。
- 我能获取文本坐标吗? 可以——API 为每个识别的单词返回边界矩形(左、上、宽、高)。
- 需要哪个 Java 版本? 推荐使用 Java 8 或更高版本以获得完整兼容性。
什么是 OCR 文本提取?
OCR(光学字符识别)将扫描图像、PDF 或照片中的可视文本转换为机器可读的字符。当您 提取 java 图像到文本 时,您的应用程序可以对先前仅为静态图像的文档进行索引、编辑和分析。此功能实现全文搜索、数据挖掘和自动化工作流,将仅图片文件转化为下游系统可操作的信息。
为什么使用 GroupDocs.Parser 进行 OCR?
GroupDocs.Parser 提供统一的 API,简化了多种文档类型的处理,同时交付高精度的 OCR 结果。通过利用 Aspose OCR 引擎,它支持数十种语言和复杂字体,返回精确的位置信息,并能高效地进行批量处理。这些特性使其成为企业级文档数字化项目的理想选择。
- 统一 API – 单一代码库即可处理 PDF、图像及超过 30 种其他格式。
- 准确识别 – Aspose OCR 支持 60 多种语言和复杂字体。
- 位置信息 – 为每个文本块返回精确坐标,支持基于布局的处理。
- 可扩展性能 – 每个作业可处理多达 500 页的批次,内存占用低于 200 MB。
前置条件
在开始之前,请确保您拥有:
- GroupDocs.Parser for Java – 版本 25.5 或更高(支持 30+ 输入和输出格式)。
- Maven 或手动下载方式用于库安装。
- Aspose OCR 连接器 – 启用仅图像文本识别所必需。
- 在 Java 8+ 环境下运行的 IntelliJ IDEA 或 Eclipse 等 IDE。
- 基本的 Java 编程知识以及对依赖管理的熟悉。
设置 GroupDocs.Parser for Java
使用 Maven
将以下依赖添加到您的 pom.xml 文件中:
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>25.5</version>
</dependency>
定义:
pom.xml是 Maven 项目描述符,列出所有必需的库及其版本。
直接下载
或者,从官方发布页面下载最新的 JAR:
GroupDocs.Parser for Java releases
定义: 发布页面提供预构建的二进制文件和文档,以便立即集成。
许可证获取步骤
- 免费试用 – 在不付费的情况下评估库。
- 临时许可证 – 获取限时密钥以进行扩展测试。
- 购买 – 获取完整许可证以无限制地用于生产环境。
基本初始化和设置
ParserSettings 配置 GroupDocs.Parser 读取文档的方式,包括 OCR 选项和性能设置。AsposeOcrOnPremise 提供本地 OCR 引擎和 Aspose OCR 的许可证处理。
以下是创建带有 Aspose OCR 连接器的 ParserSettings 实例的关键 Java 代码:
ParserSettings settings = new ParserSettings();
settings.setOcrConnector(new AsposeOcrOnPremise("your-license-path"));
定义:
ParserSettings配置 GroupDocs.Parser 如何读取和处理文档,而AsposeOcrOnPremise提供 OCR 引擎和许可证。
<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>
有了这些基础,让我们深入 OCR 文本区域的提取。
java 图像到文本提取是如何工作的?
Parser 是打开文档并提供页面及内容访问的核心类。PageTextAreaOptions 指定提取选项,例如启用 OCR 并请求位置信息。使用 Parser 加载图像,通过 PageTextAreaOptions 启用 OCR,然后遍历返回的 PageTextArea 对象。这种两步模式在一次调用中返回识别的字符串及其边界矩形,使您能够捕获每个单词的精确位置。
import com.groupdocs.parser.Parser;
import com.groupdocs.parser.options.ParserSettings;
import com.groupdocs.parser.ocr.AsposeOcrOnPremise;
ParserSettings settings = new ParserSettings(new AsposeOcrOnPremise());
如何使用 OCR 提取文本区域(逐步操作)
本节将完整演示配置 OCR、打开文档以及检索带坐标的文本区域的过程。按照这些步骤,您将获得提取的文本以及用于高级处理(如覆盖渲染或数据提取)的布局信息。
1. 使用 OCR 连接器初始化 ParserSettings
OCR 连接器使得对仅图像文档的文本识别成为可能。
// Initialize ParserSettings with OCR Connector
ParserSettings settings = new ParserSettings(new AsposeOcrOnPremise());
2. 打开文档并配置提取选项
PageTextAreaOptions 告诉解析器返回每个识别单词的位置信息。
try (Parser parser = new Parser("YOUR_DOCUMENT_DIRECTORY", settings)) {
// Configure PageTextAreaOptions for OCR processing
PageTextAreaOptions options = new PageTextAreaOptions(true);
// Extract text areas from the document
java.lang.Iterable<PageTextArea> areas = parser.getTextAreas(options);
if (areas == null) {
return; // Exit if text areas extraction is not supported
}
for (PageTextArea a : areas) {
String text = a.getText();
int leftPosition = a.getRectangle().getLeft();
int topPosition = a.getRectangle().getTop();
int width = a.getRectangle().getSize().getWidth();
int height = a.getRectangle().getSize().getHeight();
// Process the extracted data as needed
}
} catch (java.lang.Exception ex) {
// Handle any exceptions that occur during processing
}
代码功能说明
- 创建 指向文档文件夹的
Parser实例。 - 通过
PageTextAreaOptions(true)启用 OCR。 - 遍历 每个
PageTextArea,获取识别的文本 以及 其精确矩形(位置和大小)。 - 允许 您将数据存储或操作,例如插入数据库或在 UI 上进行覆盖。
PageTextArea 表示一个已识别的文本块及其边界矩形,便于将文本映射回原始图像。
3. 处理结果
您现在可以将提取的文本和坐标用于各种场景:
- 文档数字化 – 将扫描的合同转换为可搜索的 PDF。
- 数据录入自动化 – 直接从收据图像中提取发票号码等字段。
- 内容管理 – 为高级搜索高亮存储文本位置。
常见问题及解决方案
| 症状 | 可能原因 | 解决办法 |
|---|---|---|
| 未返回文本区域 | OCR 连接器未配置或图像路径不正确 | 确认 AsposeOcrOnPremise 实例已正确授权且文件路径可访问。 |
| 字符乱码 | 图像分辨率低或语言不受支持 | 使用更高分辨率的扫描并配置相应的 OCR 语言包。 |
| 大型 PDF 内存溢出 | 同时处理大量高分辨率页面 | 将页面分批处理或启用流式模式 (ParserSettings.setEnableStreaming(true))。 |
常见问答
问:如何安装 GroupDocs.Parser for Java?
答:将其作为 Maven 依赖添加(参见上面的 XML 代码片段),或从官方发布页面下载 JAR。
问:什么是 Aspose OCR,为什么要与 GroupDocs.Parser 一起使用?
答:Aspose OCR 是高精度的文本识别引擎。与 GroupDocs.Parser 配合使用,可扩展解析器处理仅图像文件并提供精确的文本位置。
问:我可以处理多种图像格式吗?
答:可以。GroupDocs.Parser 支持 JPEG、PNG、BMP、TIFF 等多种格式——只需确保 OCR 连接器能够读取该格式。
问:如果没有提取到文本区域该怎么办?
答:检查文件路径,确认 OCR 连接器已授权,并验证文档类型是否受 Aspose OCR 支持。
问:在哪里可以找到更多关于 GroupDocs.Parser 的资源?
答:访问 GroupDocs Documentation 获取详细指南和 API 参考。
其他提示与最佳实践
- 批量处理: 将提取循环放入
try‑with‑resources块,以自动释放文件句柄。 - 性能调优: 启用
ParserSettings.setEnableParallelProcessing(true),在大批量时利用多核 CPU。 - 语言配置: 调用
AsposeOcrOnPremise.setLanguage("eng+spa")同时识别英语和西班牙语。 - 结果存储: 将
PageTextArea对象序列化为 JSON,便于下游消费。
资源
- GroupDocs.Parser for Java releases
- Download Latest Version
- Documentation
- API Reference
- GitHub Repository
- Free Support Forum
- Temporary License
结论
您现在拥有使用 GroupDocs.Parser 与 Aspose OCR 连接器进行 java 图像到文本 提取的完整、可投入生产的方案。将这些技术应用于数字化遗留文档、自动化数据录入或构建可搜索档案库,轻松实现最小化工作量。
最后更新: 2026-09-17
测试环境: GroupDocs.Parser 25.5 for Java
作者: GroupDocs