在 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? GroupDocs.Parser 搭配內建的 Aspose OCR 連接器。
  • 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 與例外處理的基本概念。

設定 GroupDocs.Parser for Java

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 文字

針對特定區域進行 OCR 可提升速度與準確度,特別是當您只需要從已知區域 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 px、高 200 px。

步驟 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 並行化;此程式庫對唯讀操作是執行緒安全的。

常見問題與解決方案

問題解決方案
Out‑of‑memory errors on large files將頁面分成較小批次處理;如有需要,增加 JVM 堆積大小 (-Xmx2g)。
Poor OCR accuracy將來源影像 DPI 提升至 300 +,或在 ParserSettings 中提供語言提示。
Unsupported file format確認檔案為支援的 PDF 或影像類型;先將不支援的格式轉為 PNG。

常見問答

Q: What is OCR in the context of Java development?
A: Optical Character Recognition (OCR) 會將文字影像轉換為機器編碼的字符,GroupDocs.Parser 提供 Java 友善的 API,無需外部原生相依即可完成此工作。

Q: How do I define a rectangular area for OCR extraction?
A: 建立一個 Rectangle 物件,設定所需的 X、Y、寬度與高度,然後在呼叫 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

相關教學