PDF(Portable Document Format) 檔案是跨平台共享文件的最受信任和廣泛使用的格式之一—確保無論使用何種軟體或設備,版面和外觀始終一致。然而,在某些情況下,開發人員需要以程式方式從 PDF 檔案中提取文本,例如分析內容、對文檔進行索引或將 PDF 轉換為可編輯的文本格式。

在這篇文章中,我們將探討如何從 PDF 文件中提取文本,並使用 .NET REST API 建立 PDF 轉文本轉換器,實現通過 REST API 調用無縫和自動化的文本提取。

PDF 處理 API

利用 Aspose.PDF Cloud SDK for .NET 的功能高效地從 PDF 文件中提取文本。除了文本提取外,該 SDK 還允許您從頭開始或使用模板創建 PDF 文檔、編輯現有的 PDF 文件,以及將其轉換為其他支持的格式。您還可以通過 .NET REST API 直接執行解密、合併和操作 PDF 文件等任務。

現在要開始,我們需要在我們的 .NET 專案中安裝 SDK。

NuGet\Install-Package Aspose.Pdf-Cloud -Version 25.9.0

我們還需要在 Cloud Dashboard 上創建一個免費帳戶並獲取我們的個人客戶憑證。

在 C# 中執行 PDF 轉文本轉換

請按照以下步驟使用 C# .NET 從 PDF 文件中提取文本。

PdfApi pdfApi = new PdfApi(clientSecret, clientID);

創建 PdfApi 類的物件,並將上面獲得的客戶端憑證作為參數傳遞。

String inputFile = "sourceFile.pdf";
var sourceFile = System.IO.File.OpenRead(inputFile);
pdfApi.UploadFile("sourceFile.pdf", sourceFile);

從本地驅動器讀取輸入 PDF 並使用 UploadFile(...) 方法上傳到雲端儲存。

TextRectsResponse response = pdfApi.GetText("inputPDF.pdf", LLX, LLY, URX, URY, null, null, null, null, null);

我們需要在 PDF 檔案中指定從哪個區域提取文字內容,使用 GetText(...) 方法。

for (int counter = 0; counter <= response.TextOccurrences.List.Count - 1; counter++)
{
    // write text content in console
    Console.WriteLine(response.TextOccurrences.List[counter].Text);
}

一旦文本內容被提取,我們可以將其保存到本地硬碟或在控制台中列印出來。

// 欲獲得更多範例,請造訪 https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet

// 從 https://dashboard.aspose.cloud/ 獲取客戶端憑證
string clientSecret = "XXXXXXXXX";
string clientID = "XXXXXX-XXXXXXX-be35-ff5c3a6aa4a2";

// 創建 PdfApi 的物件,同時傳遞用戶端憑證作為參數。
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// Input PDF file name
String inputFile = "input.pdf";
// 將 PDF 檔案載入串流實例
var sourceFile = OpenRead(inputFile);

// 上傳 PDF 檔案到雲端儲存空間
pdfApi.UploadFile("inputPDF.pdf", sourceFile);

// 下左角的 X 坐標
Double LLX = 200.0;
// Y - 坐標的左下角。
Double LLY = 200.0;
// 上右角的 X 坐標。
Double URX = 600.0;
// 右上角的 Y 坐標。
Double URY = 650.0;

// 呼叫 API 以從指定坐標提取文本
TextRectsResponse response = pdfApi.GetText("inputPDF.pdf", LLX, LLY, URX, URY, null, null, null, null, null);

// 現在依次遍歷每個文本出現並在控制台中打印
// 另外,我們也可以將輸出直接保存到 .txt 檔案中。
for (int counter = 0; counter <= response.TextOccurrences.List.Count - 1; counter++)
{
    // write text content in console
    Console.WriteLine(response.TextOccurrences.List[counter].Text);
}

使用 cURL 從 PDF 中提取文本

除了使用 .NET 或 Java 代碼片段外,您還可以通過 cURL 命令使用 Aspose.PDF Cloud 從 PDF 文件中提取文本。因此,在這種方法中,前提條件是生成 JWT 訪問令牌(根據您的客戶端憑據),可以使用以下命令獲取。

步驟 1. - 獲取 JWTAccess 令牌:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=XXXXX-XXXXX-XXXXXX-ff5c3a6aa4a2&client_secret=XXXXXXXXXXXX" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

步驟 1. - 從 PDF 檔案中提取文字:

curl -v "https://api.aspose.cloud/v3.0/pdf/{inputPDF}/text?splitRects=true&LLX=10&LLY=10&URX=800&URY=800" \
-X GET \
-H  "accept: application/json" \
-H  "authorization: Bearer {Access_Token}" \
-o "extractedContent.txt"
  • 一旦命令成功執行,指定矩形區域的文字將提取到文本檔案中。

免費 PDF 解析器應用程式

如果您想在不使用任何編碼或 cURL 命令的情況下測試 API 的功能,請嘗試使用我們基於 .NET REST APIs 的 [Free PDF Parser] 應用程式。

pdf parser app

結論性意見

在這篇文章中,我們學習了如何將 Aspose.PDF Cloud SDK for .NET 整合到我們的 .NET 專案中以進行文本擷取,並同時探索了使用 cURL 指令透過命令行介面執行 PDF 文本擷取的選項。因此,無論您的目標是數據分析、機器學習還是其他自動化目的,該 SDK 都能為您提供可靠的工具以高效處理 PDF 內容。將這些技能付諸實踐,讓您的 PDF 處理如專業人士般流暢!

閱讀資料

相關文章

我們也建議造訪以下連結以瞭解更多: