如果您曾经尝试从 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 操作过程之前,我们需要确保安装了以下组件:
- 一个 GroupDocs Cloud 账户 - 注册以获取您的 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);
通过将 Configuration 对象作为参数传递,初始化 ParseApi
的实例。
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);
尝试在线
不想立即编码?试试免费的 在线 PDF 文本提取器。它由 REST API 提供支持,使您能够即时从任何 PDF 文档中提取文本。

结论
在本指南中,您将学习如何:
- 从 PDF 文件中提取文本,使用 C# .NET。
- 上传并解析云上的文档。
- 按页面范围或从附加文件中检索文本。
我们的云 API 使开发人员可以轻松实现 PDF 文本提取的自动化,而无需处理低级的 PDF 解析逻辑。