跳至页脚内容
使用IRONPDF

C#教程:使用IronPDF构建PDF文本内容查看器(Windows表单)

在当今的数字时代,PDF 文件在教育、商业和个人使用的许多工作流程中起着至关重要的作用。 它们是一种共享和展示多种多样数据的标准格式,包括文本、图像和表格。

在 C# Windows Forms 应用程序中显示完整 PDF 文档的完整视觉保真度可能需要专用的渲染组件,但开发人员往往还有其他需求。 有时,目标是用 C# 读取 PDF 文本、提取数据或显示 PDF 的文本内容以供快速审核、索引或访问。

本文将指导您创建一个专注于此特定任务的应用程序:使用 IronPDF(一种功能强大的 .NET 库)构建一个简单的 C# PDF 文本内容查看器。 您将学习如何使用 IronPDF 在 Windows Forms 应用程序中加载 PDF 并有效地提取和显示其文本内容。

什么是 IronPDF?

IronPDF 是一个全面的 C# 库,使 .NET 开发人员能够在其应用程序中创建、编辑和处理 PDF 文件。 它允许用户将 HTML、图像和 SVG 转换为 PDF 文档,尤其是在本教程中,还可以读取和提取现有 PDF 的内容。 IronPDF 设计为易于使用,并提供广泛的功能来操作 PDF 文件。

构建 PDF 文本查看器的要求

要创建此 C# PDF 文本显示应用程序,您需要:

  • Visual Studio:用于创建 Windows 窗体应用程序的集成开发环境 (IDE)。
  • IronPDF:一个NuGet包,提供读取、创建和操作 PDF 文档的功能,包括文本提取。

HTML 转 PDF 转换概念图 IronPDF 还可以从 HTML 创建 PDF,这是与本教程中展示的文本提取的一个独立功能。

使用 IronPDF 在 C# 中创建 PDF 文本内容查看器的步骤

步骤 1:在 Visual Studio 中创建一个新的 Windows Forms 应用程序

首先,启动 Visual Studio 并点击"创建一个新项目"。从列表中选择"Windows Forms App (.NET Framework)"或类似的.NET模板。

Visual Studio 新建项目对话框 Visual Studio 新项目创建

接下来,为您的项目提供一个名称(例如,CSharpPdfTextReader),然后单击"创建"按钮。 这将设置一个新的 Windows Forms 应用程序项目。

步骤 2:安装 IronPDF 库

使用 NuGet 包管理器 GUI

  1. 在解决方案资源管理器中,右键单击您的项目并选择"管理 NuGet 包..."
  2. 转到"浏览"选项卡并搜索"IronPdf"。
  3. 选择 IronPdf 软件包,然后单击"安装"。

 Visual Studio 中的NuGet包管理器正在搜索IronPDF 通过 NuGet 包管理器安装 IronPDF

使用 NuGet 包管理器控制台

或者,打开包管理器控制台(工具 > NuGet 包管理器 > 包管理器控制台)并运行命令:

Install-Package IronPdf

这将下载和安装 IronPDF 及其依赖项到您的项目中。

步骤 3:向您的表单中添加一个 RichTextBox 以显示文本

我们将使用 RichTextBox 控件来显示从 PDF 中提取的文本内容。 RichTextBox 适合显示格式化文本,但在本教程中,它的主要作用是显示IronPDF提取的纯文本。 它有效地显示文本信息而不尝试渲染 PDF 的原始视觉布局。

要添加 RichTextBox:

  1. 在设计器视图中打开您的表单。
  2. 转到工具箱(视图 > 工具箱)。
  3. 在"常用控件"下找到 RichTextBox,将其拖到表单上。
  4. 根据需要调整其大小和位置。 在"属性"窗口中,您可以设置其 pdfDataRichTextBox),如果您希望它占据表单的大部分,则可以将其 Dock 属性设置为 Fill

PDF 查看器 C# Windows 应用程序(教程),图 4:访问 Form1 中的 RickTextBox 向 Form1 添加 RichTextBox 以显示提取的 PDF 文本

步骤 4:添加一个按钮以选择 PDF 文件

向表单添加一个 Button 控件。 用户将点击此按钮以打开文件对话框并选择一个要提取文本的 PDF 文件。

  1. Button 从工具箱拖到表单上。
  2. 在属性窗口中,设置其 openBtn)和 Text(例如,"打开 PDF 并显示文本")。

PDF 查看器 C# Windows 应用程序(教程),图 5:向 Form1 添加新按钮 向 Form1 添加按钮以触发 PDF 选择

步骤 5:添加 C# 代码以加载 PDF 并提取文本

双击刚刚添加的按钮("打开 PDF 并显示文本"),在 Click 中创建其 Form1.cs 事件处理程序。

首先,请确保已在 Form1.cs 文件的顶部导入IronPDF命名空间:

using IronPdf;
using System; // For EventArgs, Exception
using System.Windows.Forms; // For OpenFileDialog, MessageBox, DialogResult, etc.
using IronPdf;
using System; // For EventArgs, Exception
using System.Windows.Forms; // For OpenFileDialog, MessageBox, DialogResult, etc.
$vbLabelText   $csharpLabel

现在,实现按钮点击事件处理程序。 此代码将:

  1. 提示用户选择一个 PDF 文件。
  2. 使用 IronPDF 加载所选 PDF。
  3. 使用 IronPDF 的 ExtractAllText() 方法从 PDF 中获取所有文本。
  4. RichTextBox 中显示此提取的文本。
private void openBtn_Click(object sender, EventArgs e)
{
    // Create an OpenFileDialog to open PDF files
    var openFileDialog = new OpenFileDialog
    {
        Filter = "PDF files (*.pdf)|*.pdf|All files (*.*)|*.*", // Filter to show only PDFs
        Title = "Select a PDF file to extract text from" // Dialog title
    };

    // Show dialog and check if the user selected a file
    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        try
        {
            // It's recommended to set your license key once at application startup.
            // License.LicenseKey = "YourIronPdfLicenseKey"; 
            // If no key is set, IronPDF runs in trial mode (watermarks on output, time limits).
            // For text extraction, the trial is fully functional for development.

            // Load the selected PDF using IronPDF
            var pdf = PdfDocument.FromFile(openFileDialog.FileName);

            // Extract all text content from the PDF using IronPDF
            string extractedText = pdf.ExtractAllText();

            // Display the extracted text in the RichTextBox
            // (Assuming your RichTextBox is named pdfDataRichTextBox, change if different)
            pdfDataRichTextBox.Text = extractedText; 
        }
        catch (Exception ex)
        {
            // Show error message if an exception occurs
            MessageBox.Show("An error occurred while processing the PDF file: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
}
private void openBtn_Click(object sender, EventArgs e)
{
    // Create an OpenFileDialog to open PDF files
    var openFileDialog = new OpenFileDialog
    {
        Filter = "PDF files (*.pdf)|*.pdf|All files (*.*)|*.*", // Filter to show only PDFs
        Title = "Select a PDF file to extract text from" // Dialog title
    };

    // Show dialog and check if the user selected a file
    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        try
        {
            // It's recommended to set your license key once at application startup.
            // License.LicenseKey = "YourIronPdfLicenseKey"; 
            // If no key is set, IronPDF runs in trial mode (watermarks on output, time limits).
            // For text extraction, the trial is fully functional for development.

            // Load the selected PDF using IronPDF
            var pdf = PdfDocument.FromFile(openFileDialog.FileName);

            // Extract all text content from the PDF using IronPDF
            string extractedText = pdf.ExtractAllText();

            // Display the extracted text in the RichTextBox
            // (Assuming your RichTextBox is named pdfDataRichTextBox, change if different)
            pdfDataRichTextBox.Text = extractedText; 
        }
        catch (Exception ex)
        {
            // Show error message if an exception occurs
            MessageBox.Show("An error occurred while processing the PDF file: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
}
$vbLabelText   $csharpLabel

代码细节:

  • openFileDialog: 用于文件选择的标准对话框,筛选出 PDF 文件。
  • PdfDocument.FromFile(openFileDialog.FileName): 此IronPDF方法将选定的 PDF 加载到 PdfDocument 对象中。
  • pdf.ExtractAllText(): 这是本教程中关键的IronPDF函数。 它遍历整个 PDF 并将所有可识别的文本内容提取到一个字符串中。 这在 C# 解析 PDF 文本 场景中非常有用。
  • pdfDataRichTextBox.Text = extractedText;: 然后,将提取的文本分配给 Text 属性 RichTextBox(确保名称 pdfDataRichTextBox 与您为 RichTextBox 控件指定的名称匹配)。

这展示了 IronPDF 如何简化 在 C# 中读取 PDF 文本 ,使开发人员能够以最小的努力以编程方式访问 PDF 内容。

步骤 6:构建并运行您的 C# PDF 文本查看器应用程序

  1. 在 Visual Studio 中,转到"构建"菜单并选择"构建解决方案"。
  2. 构建成功后,按"F5"或点击"启动"按钮运行应用程序。

您的应用程序窗口将出现。 点击"打开 PDF 并显示文本"按钮,从计算机中选择一个 PDF 文件,然后点击"打开"。

PDF 查看器 C# Windows 应用程序(教程),图 6:运行应用程序 运行 C# PDF 文本查看器应用程序

然后,RichTextBox 将显示从所选 PDF 文件中提取的文本内容。

PDF 查看器 C# Windows 应用程序(教程),图 7:选择 PDF 文件后显示文本内容 从 PDF 中提取的文本内容显示在 RichTextBox

有关在 MAUI 应用程序中可视化渲染 PDF 的信息(这与本教程的文本提取焦点不同),您可能会探索"PDF Viewing in MAUI Tutorial"。

结论:使用 C# 和 IronPDF 轻松访问 PDF 文本内容

遵循这些步骤,您已经创建了一个可有效提取和显示 PDF 文件中文本内容的 C# Windows Forms 应用程序,使用 IronPDF。 当您需要以编程方式访问 PDF 中的文本信息以进行展示、分析或在您的 .NET 应用程序中进一步处理时,这种方法很有价值。

IronPDF 提供了强大的 C# PDF 文本提取功能,而这只是其全面功能的一部分。 您还可以使用 IronPDF 完成更高级的任务,如在 PDF 中搜索文本、添加注释打印 PDF 文档PDF 加密和解密以及编辑 PDF 表单

请记住,本教程侧重于一个特定用例:使 PDF 文本在 C# 应用程序中更容易获得。 您可以根据这一基础进行调整和扩展,以满足更复杂的需求。

如果您有兴趣探索 IronPDF 的全部潜力:

  • 探索 IronPDF 文档 以获取详细的指南和示例。
  • 要在没有试用限制的情况下在您的生产应用程序中使用 IronPDF ,需要许可证密钥。 您可以从 IronPDF 网站购买 许可证。 许可证从 $799 开始。
  • 您还可以通过免费试用版评估完整的商业版本。

常见问题解答

如何在 C# 应用程序中从 PDF 中提取文本?

您可以使用 IronPDF 的 ExtractAllText() 方法在 C# 应用程序中高效地提取 PDF 文档中的所有可识别文本内容。

我需要哪些工具来创建 C# 中的 PDF 文本查看器?

要在 C# 中创建 PDF 文本查看器,您需要 Visual Studio 作为开发环境以及 IronPDF 库,可以通过 NuGet 包管理器安装。

如何在 Windows 窗体应用程序中显示提取的 PDF 文本?

您可以在 Windows 窗体应用程序中使用 RichTextBox 控件显示从 PDF 提取的文本内容,以允许格式化文本显示。

在 C# 应用程序中选择 PDF 文件的流程是什么?

要选择 PDF 文件,向表单中添加一个按钮控件以打开文件对话框,允许用户浏览并选择要处理的 PDF 文件。

如何在 C# 中处理 PDF 处理过程中出现的错误?

您可以通过在 try-catch 块中封装 PDF 处理代码来处理错误,并在发生异常时使用 MessageBox.Show 显示错误消息。

IronPDF 提供了哪些附加功能?

IronPDF 提供了超越文本提取的功能,包括 HTML 转 PDF 转换、添加注释、文本搜索、PDF 加密和解密、打印以及编辑 PDF 表单。

如何在 Visual Studio 中设置用于 PDF 处理的新 Windows 窗体项目?

在 Visual Studio 中,选择“创建一个新项目”,并选择“Windows 窗体应用程序 (.NET Framework)”。命名您的项目并点击“创建”以设置用于 PDF 处理的项目。

运行 C# 中的 PDF 文本查看器应用程序需要哪些步骤?

在 Visual Studio 的构建菜单中选择“构建解决方案”,然后按 F5 或点击“开始”运行应用程序。使用按钮选择 PDF 文件并显示其文本。

IronPDF 可以用于 HTML 转 PDF 转换吗?

是的,IronPDF 可以使用 RenderHtmlAsPdf 用于 HTML 字符串或 RenderHtmlFileAsPdf 用于 HTML 文件的方法进行 HTML 转 PDF 转换。

PDF 文本提取中的一些常见故障排除场景是什么?

常见问题包括处理非标准字体或加密的 PDF。确保 PDF 文件没有密码保护,如果文本提取失败,请检查字体兼容性。

IronPDF 与 .NET 10 兼容吗?

是的——IronPDF 支持 .NET 10 以及更早的版本(如 .NET 9、8、7、6、.NET Core、.NET Standard 和 .NET Framework),这意味着您可以在 .NET 10 项目上使用 IronPDF 构建 Windows Forms 文本查看器,而不会出现兼容性问题。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me