如何在 Java 中使用 GroupDocs.Parser 提取 PDF 文字

從 PDF 檔案中提取文字是資料驅動應用程式的常見需求,許多開發者也在尋找在 Java 環境中如何提取 pdf的方法。本指南將帶您一步步完成所有設定——從安裝 GroupDocs.Parser 到從 PDF 文件的每一頁提取原始文字。完成後,您將能自信地在 Java 專案中加入強大的 PDF 解析功能。

快速解答

  • 哪個函式庫最適合在 Java 中提取 PDF 文字? GroupDocs.Parser for Java.
  • 我可以在不保留格式的情況下提取原始 PDF 文字嗎? 可以——使用 TextOptions(true) 進入原始模式。
  • 執行程式碼是否需要授權? 免費試用授權可用於開發;正式環境需購買授權。
  • 是否支援 Maven? 當然可以——將 GroupDocs 儲存庫與相依性加入 pom.xml
  • 這能處理大型 PDF 嗎? 可以,只要使用 try‑with‑resources 來管理記憶體。

在 Java 中什麼是 PDF 文字提取?

PDF 文字提取是指讀取 PDF 檔案內儲存的字元,並將其以純文字字串回傳。此功能可用於索引、分析、內容遷移或自動化報告。使用 GroupDocs.Parser,您可以快速且高保真地提取 extract pdf text java

為什麼要在 Java 中使用 GroupDocs.Parser?

  • 高精度 – 能處理複雜版面、表格與多語言文件。
  • 簡易 API – 只需極少程式碼即可取得原始文字。
  • 效能導向 – 基於串流的讀取降低記憶體負擔。
  • 跨平台 – 可在任何相容 JVM 的環境執行。

前置條件

  • Java Development Kit (JDK) 8 或更新版本。
  • 已安裝 Maven(或能手動加入 JAR)。
  • 有效的 GroupDocs.Parser 授權(免費試用可用於測試)。

設定 GroupDocs.Parser(Java 版)

使用 Maven

將 GroupDocs 儲存庫與 parser 相依性加入您的 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>

直接下載

如果不想使用 Maven,可從官方網站取得最新的 JAR: GroupDocs.Parser for Java releases

取得授權步驟

從 GroupDocs 網站取得免費試用授權或購買正式授權。取得授權檔後,依文件說明在應用程式中設定。

基本初始化與設定

以下為啟動 Parser 實例所需的最小程式碼:

import com.groupdocs.parser.Parser;
import com.groupdocs.parser.options.TextOptions;

String pdfFilePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";

try (Parser parser = new Parser(pdfFilePath)) {
    // Your code to extract text goes here
}

實作指南

我們將把提取流程拆解為清晰的編號步驟,讓您輕鬆跟隨。

步驟 1:匯入必要的套件

確保以下匯入語句已存在:

import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.TextReader;
import com.groupdocs.parser.options.IDocumentInfo;
import com.groupdocs.parser.options.TextOptions;

步驟 2:初始化 Parser 物件

建立 Parser 實例,指向您的 PDF 檔案:

try (Parser parser = new Parser(pdfFilePath)) {
    // Further processing code
}

步驟 3:取得文件資訊

取得文件資訊可讓您知道有多少頁可供使用:

IDocumentInfo documentInfo = parser.getDocumentInfo();

步驟 4:遍歷每一頁並提取原始文字

遍歷每一頁並取得原始文字。TextOptions(true) 會指示 GroupDocs.Parser 回傳未格式化的文字,非常適合資料處理流程。

for (int p = 0; p < documentInfo.getRawPageCount(); p++) {
    try (TextReader reader = parser.getText(p, new TextOptions(true))) {
        String pageText = reader.readToEnd();
        System.out.println(pageText); // Output the extracted text for each page
    }
}

參數與方法說明

  • parser.getText(int pageNumber, TextOptions options): 從特定頁面提取文字。設定 TextOptions(true) 會回傳 extract raw pdf text,不含版面資訊。
  • reader.readToEnd(): 讀取整個串流至單一 String

常見問題與解決方案

症狀可能原因解決方式
FileNotFoundException檔案路徑錯誤確認 pdfFilePath 指向現有檔案,必要時使用絕對路徑。
輸出為空PDF 為掃描圖像GroupDocs.Parser 只能從可搜尋的 PDF 提取文字;若為掃描圖像請使用 OCR 附加元件。
大型 PDF 發生記憶體不足錯誤未釋放資源始終使用 try‑with‑resources(如範例所示)關閉 ParserTextReader

實務應用

  1. 資料分析 – 從 PDF 報告中提取客戶回饋,以進行情感分析。
  2. 自動化報告 – 從多個 PDF 中提取關鍵段落以產生摘要。
  3. 內容遷移 – 將舊有 PDF 內容搬移至資料庫或內容管理系統。

效能考量

  • 記憶體管理:使用 try‑with‑resources 模式(已示範)即時釋放原生資源。
  • 選擇性提取:若只需特定頁面,可遍歷 documentInfo.getRawPageCount() 的子集合。
  • 平行處理:對於大量批次,可考慮使用平行串流處理 PDF,同時注意 JVM 記憶體限制。

結論

本教學說明了如何使用 GroupDocs.Parser(Java 版)how to extract pdf 文字,從專案設定到逐頁提取原始文字。現在您已具備穩固的基礎,可將 PDF 解析整合至任何基於 Java 的工作流程。

下一步

  • 嘗試使用 TextOptions 以包含格式或提取特定區段。
  • 結合提取的文字與自然語言處理(NLP)函式庫,以獲得更深入的洞見。
  • 探索其他 GroupDocs.Parser 功能,如影像提取或 metadata 取得。

常見問答

Q: 什麼是 GroupDocs.Parser?
A: 它是一個 Java 函式庫,可從超過 100 種文件格式(包括 PDF)中提取文字、metadata 與影像。

Q: 如何處理受密碼保護的 PDF?
A: 在 Parser 建構子中傳入密碼:new Parser(pdfPath, "password")

Q: 我可以同時提取影像與文字嗎?
A: 可以——GroupDocs.Parser 同時提供影像提取 API 與文字提取功能。

Q: 在正式環境使用 GroupDocs.Parser 需要付費嗎?
A: 可使用免費試用版進行評估;正式部署則需購買商業授權。

Q: 若提取的文字缺少字元該怎麼辦?
A: 確認 PDF 含有可選取的文字(非掃描圖像)。對於掃描 PDF,請使用 OCR 附加元件或 OCR 函式庫。


最後更新: 2026-02-14
測試版本: GroupDocs.Parser 25.5 for Java
作者: GroupDocs

資源