如果您曾經嘗試從 PDF 手動複製數據,您就知道這是多麼繁瑣—特別是對於大型或多個文檔。使用我們的 .NET Cloud SDK,您可以自動化此過程,並使用幾行 C# 代碼從 PDFs 中程序化地提取文本。

在這個適合初學者的教程中,您將學習如何在 C# .NET 中從 PDF 文檔中提取文本,無論您想要閱讀所有文本、按特定頁面範圍提取,還是甚至從 PDF 內部的嵌入文件中解析文本。

PDF 解析器 API

GroupDocs.Parser Cloud SDK for .NET 是一個令人驚豔的 API,提供了在線程式化操作 PDF 文件的能力。它不僅提供 PDF 創建或轉換的功能,您還可以輕鬆提取 PDF 文件的元素,如文本、圖像、附件、書簽等。在本文中,我們專注於使用 .NET Cloud SDK 從 PDF 文件中提取文本。

🔧 先決條件

在我們開始 PDF 操作過程之前,我們需要確保已安裝以下組件:

  • A GroupDocs Cloud account – sign up to get your Client ID and Secret.
  • .NET 6.0 或更高版本已安裝。
  • Visual Studio 或任何支援 .NET 開發的 IDE。

安裝

直接從 NuGet 套件管理器安裝 SDK:

Install-Package GroupDocs.Parser-Cloud

使用 C# 提取 PDF 文本

請按照以下步驟以程式方式從 PDF 文件中獲取文字:

var configuration = new Configuration("YourClientId", "YourClientSecret");
var parseApi = new ParseApi(configuration);

初始化 ParseApi 的實例,通過傳遞 Configuration 物件作為參數。

var fileApi = new FileApi(configuration);

using (var fileStream = File.OpenRead("sample.pdf"))
{
    var uploadRequest = new UploadFileRequest("sample.pdf", fileStream);
    fileApi.UploadFile(uploadRequest);
}

從本地驅動器讀取輸入的 PDF 文件,並通過調用 UploadFile(...) 方法上傳到雲存儲中,屬於 UploadFileRequest 類別。

// 如需更多範例,請訪問 https://github.com/groupdocs-parser-cloud/groupdocs-parser-cloud-dotnet

var options = new TextOptions
{
    FileInfo = new FileInfo { FilePath = "sample.pdf" }
};

var request = new TextRequest(options);
var response = parseApi.Text(request);

Console.WriteLine("Extracted Text:\n");
Console.WriteLine(response.Text);
  • TextOptions: 定義要從哪個文件提取文本。
  • TextRequest: 將請求發送到雲端。
  • parseApi.Text(): 返回提取的文本內容。

使用 C# 從頁面範圍中提取文本

如果您只需要特定頁面的文本(例如,第 2 頁到第 4 頁),您可以像這樣指定頁面範圍:

var options = new TextOptions
{
    FileInfo = new FileInfo { FilePath = "sample.pdf" },
    StartPageNumber = 2,
    CountPagesToExtract = 3
};

var request = new TextRequest(options);
var response = parseApi.Text(request);

Console.WriteLine("Text extracted from pages 2 to 4:");
Console.WriteLine(response.Text);

從附加文件中提取文本

一些 PDF 包含像 Word、Excel 或其他 PDF 的附件。該 SDK 允許您甚至從這些嵌入的文檔中提取文本:

var options = new TextOptions
{
    FileInfo = new FileInfo { FilePath = "sample.pdf" },
    ContainerItemInfo = new ContainerItemInfo
    {
        RelativePath = "attachment.docx",
        StartPageNumber = 1,
        CountPagesToExtract = 2
    }
};

var request = new TextRequest(options);
var response = parseApi.Text(request);

Console.WriteLine("Extracted text from the attached document:");
Console.WriteLine(response.Text);

試試線上版

Don`t want to code yet? Try the free online PDF text extractor. Its powered by REST API, enabling you to instantly extract text from any PDF document.

比較 Excel 文件在線上

結論

在本指南中,您將學習如何:

  • 使用 C# .NET 從 PDF 文件中提取文本。
  • 上傳並解析雲端上的文檔。
  • 根據頁面範圍或附加文件檔案檢索文本。

我們的雲端 API 使開發人員能夠輕鬆自動化 PDF 文字提取,而無需處理低級 PDF 解析邏輯。

有用的連結

See Also