产品比较

使用iTextSharp VS IronPDF从C#中的PDF提取文本

发布 2023年十一月14日
分享:

在数字文档管理的动态环境中,从 PDF 文件中毫不费力地提取数据的能力是支撑众多应用的基础任务。 提取文本的过程对于综合数据分析、内容索引、商业用途和文本处理等目的至关重要。 在一系列可用的工具中,iTextSharp 是一个备受推崇的 C# 库,它是从 PDF 文件中提取文本的出色解决方案。

在这篇内容全面的文章中,我们将深入探讨使用 iTextSharp 的丰富功能,探索这个功能强大、用途广泛的解析器库如何赋予开发人员使用 C# 编程语言从 PDF 文档中高效提取文本内容的能力。 我们将介绍基本方法、示例技术和最佳实践,让开发人员掌握有效利用 iTextSharp 进行文本提取所需的知识。 我们还将在本篇文章中讨论和比较最好、最强大的 PDF 库 IronPDF。

如何从 PDF C# 中提取文本;

  1. 下载用于从 PDF 中提取文本的 C# 库。
  2. 通过实例化 PdfReader 对象加载现有 PDF。
  3. 使用 GetTextFromPage 方法从 PdfDocument 对象中提取文本。
  4. 实例化 foreach 循环,遍历各行。
  5. 使用 WriteLine 方法将这些行写入文件。

什么是IronPDF?

IronPDF是.NET 开发领域中一个功能丰富的著名库,它彻底改变了 PDF 的生成和操作。 IronPDF 为开发人员提供了一套全面的工具,可与 C# 应用程序无缝集成,轻松创建、修改和渲染 PDF 文档。 凭借其直观的应用程序接口和强大的功能,这个多功能库为从 HTML、图像和内容生成高质量 PDF 提供了无限可能。 在本文中,我们将探索 IronPDF 的功能,深入了解其主要特性,并演示如何利用它在 C# 中高效处理 PDF 相关任务;

iTextSharp 库

iTextSharp 是使用 C# 进行 PDF 操作领域著名的强大库,它彻底改变了开发人员处理 PDF 文档的方式。 它是一款多功能、功能强大的工具,便于创建、修改和提取 PDF 文件中的内容。 iTextSharp 使开发人员能够生成复杂的 PDF、提取图像、处理现有文档和提取数据,使其成为广泛应用的首选解决方案。 在本文中,我们将深入探讨 iTextSharp 的功能和特性,探索如何在 C# 编程环境中有效利用 iTextSharp 管理和处理 PDF。

安装 IronPDF

安装 IronPDF 是一个简单明了的过程,以下是在 C# 项目中安装和集成 IronPDF 的步骤。

  1. 打开 Visual Studio,创建一个新项目或打开一个现有项目。
  2. 转到 "工具",从下拉菜单中选择 "NuGet 包管理器"。
  3. 在新的侧菜单中选择解决方案的 NuGet 包管理器。

    使用 iTextSharp VS IronPDF 在 C# 中提取 PDF 中的文本 图 1 - NuGet 软件包管理器

  4. 在 "NuGet 包管理器 "窗口中,选择 "浏览 "选项卡。
  5. 在搜索栏中输入 "IronPDF",然后按 Enter 键。
  6. IronPDF 实例列表将出现,选择最新版本并按安装。

    使用 iTextSharp VS IronPDF 在 C# 中提取 PDF 中的文本 图 2 - IronPDF 安装

    就这样,IronPDF 安装完毕,可以在您的 C# 项目中使用了。

安装 iTextSharp 库

安装 iTextSharp PDF 库与安装 IronPDF 相同。 重复上述步骤,只需在浏览窗口中搜索 "iTextSharp "而不是 IronPDF,从软件包列表中选择并点击安装,即可在项目中集成 iTextSharp PDF 库。

使用 iTextSharp VS IronPDF 在 C# 中提取 PDF 中的文本 图 3 - iTextSharp

使用 IronPDF 从 PDF 文件中提取文本

IronPDF 提供从 PDF 文件中提取文本的功能,可根据特定页面自动提取文本或从所有 PDF 文件中提取文本。 在下面的代码示例中,我们将看到如何从 PDF 文档示例的特定页面中提取文本。

using IronPdf;
using System;
using PdfDocument PDF = PdfDocument.FromFile("Watermarked.pdf");
string Text = PDF.ExtractTextFromPage(1);
Console.Write(Text);
using IronPdf;
using System;
using PdfDocument PDF = PdfDocument.FromFile("Watermarked.pdf");
string Text = PDF.ExtractTextFromPage(1);
Console.Write(Text);
Imports IronPdf
Imports System
Private PdfDocument As using
Private Text As String = PDF.ExtractTextFromPage(1)
Console.Write(Text)
VB   C#

上述代码使用 C# 中的 IronPDF 库从 PDF 文件中提取文本并显示在控制台中。 首先,导入必要的命名空间,包括 IronPDF 和 System。 然后,代码使用 FromFile 方法将名为 "Watermarked.pdf "的 PDF 文档加载到 PdfDocument 对象中。 随后,它会使用 ExtractTextFromPage 从 PDF 的第二页提取文本,并将其存储在名为 Text 的字符串变量中。 最后,使用 Console.Write 将提取的文本显示在控制台中。

使用 iTextSharp VS IronPDF 在 C# 中提取 PDF 中的文本 图 4 - 输出

使用 iTextSharp 库从 PDF 文件中提取文本

您还可以使用 iTextSharp 从 PDF 文件中提取文本,下面是 iTextSharp 库的一个示例。

using System;
using System.Text;
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
namespace PDFApp2
{
    class Program
    {
        static void Main(string [] args)
        {
            string filePath = @"C:\Users\buttw\OneDrive\Desktop\highlighted PDF.pdf";
            string outPath = @"C:\Users\buttw\OneDrive\Desktop\name.txt";
            int pagesToScan = 2;
            string strText = string.Empty;
            try
            {
                PdfReader reader = new PdfReader(filePath);
                for (int page = 1; page <= pagesToScan; page++) 
                {
                    ITextExtractionStrategy its = new iTextSharp.text.pdf.parser.LocationTextExtractionStrategy();
                    strText = PdfTextExtractor.GetTextFromPage(reader, page, its);
                    strText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(strText)));
                    string [] lines = strText.Split('\n');
                    foreach (string line in lines)
                    {
                        using (System.IO.StreamWriter file = new System.IO.StreamWriter(outPath, true))
                        {
                            file.WriteLine(line);
                        }
                    }
                }
                reader.Close();
            }
            catch (Exception ex)
            {
                Console.Write(ex);
            }
        }
    }
}
using System;
using System.Text;
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
namespace PDFApp2
{
    class Program
    {
        static void Main(string [] args)
        {
            string filePath = @"C:\Users\buttw\OneDrive\Desktop\highlighted PDF.pdf";
            string outPath = @"C:\Users\buttw\OneDrive\Desktop\name.txt";
            int pagesToScan = 2;
            string strText = string.Empty;
            try
            {
                PdfReader reader = new PdfReader(filePath);
                for (int page = 1; page <= pagesToScan; page++) 
                {
                    ITextExtractionStrategy its = new iTextSharp.text.pdf.parser.LocationTextExtractionStrategy();
                    strText = PdfTextExtractor.GetTextFromPage(reader, page, its);
                    strText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(strText)));
                    string [] lines = strText.Split('\n');
                    foreach (string line in lines)
                    {
                        using (System.IO.StreamWriter file = new System.IO.StreamWriter(outPath, true))
                        {
                            file.WriteLine(line);
                        }
                    }
                }
                reader.Close();
            }
            catch (Exception ex)
            {
                Console.Write(ex);
            }
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

所提供的代码是一个 C# 程序,它使用 iTextSharp 库从 PDF 文档的特定页面中提取文本并保存到文本文件中。首先,我们导入了必要的命名空间,包括 System.TextiTextSharp.text.pdf 和 iTextSharp.text.pdf.parser。 程序会指定文件名、输入 PDF 文件路径、输出文本文件路径和要扫描的页数。 然后,它利用 iTextSharp 的 "PDFReader "读取 PDF 文件。对于每个指定页面,它都会使用 iTextSharp 新的 LocationTextExtractionStrategy 提取文本,并将编码转换为 UTF-8。提取的文本被分成几行,新的 StringBuilder 文本从 PDF 代码的正确方向运行。 过程中遇到的任何异常都会被捕获并显示在控制台中。 最后,程序关闭 "PdfReader"。

使用 iTextSharp VS IronPDF 在 C# 中提取 PDF 文本 图 5 - 使用 iTextSharp 提取文本

结论

iTextSharp 是一个功能强大、用途广泛的 C# 库,它彻底改变了 PDF 操作,实现了无缝内容创建、修改和提取。 其强大的功能使其成为开发人员的首选解决方案,使他们能够生成复杂的 PDF 并有效管理 PDF 中的文本内容。 此外,.NET 领域的另一个著名库 IronPDF 提供了一套全面的 PDF 生成和图像处理工具,增强了开发人员从各种来源轻松创建、修改和渲染高质量 PDF 的能力。 在比较这两个 PDF 库时,IronPDF 因其完善的文档和易于使用的 API 而处于领先地位,而且只需几行代码就能完成所有文本提取,而使用 iTextSharp 则必须编写冗长而复杂的代码,并且需要深入了解库和 C&num 的知识;

了解更多 IronPDF 及其功能,请访问此链接 这里. 使用 IronPDF 提取文本的完整教程可在此找到 链接. 有关 IronPDF 和 iTextSharp 的完整教程,请访问以下网站 链接.

< 前一页
iTextSharp 文档评审与 IronPDF 比较
下一步 >
Puppeteer 和 IronPDF 在 C# 中的比较

准备开始了吗? 版本: 2024.9 刚刚发布

免费NuGet下载 总下载量: 10,731,156 查看许可证 >