产品比较

如何使用iTextSharp合并PDF文件

发布 2023年九月12日
分享:

合并 PDF 文档是各种软件应用程序(如文档管理系统、报告生成工具等)的共同要求。 在 .NET 生态系统中,开发人员可以使用多个库来处理 PDF 文件。 iTextSharp 和 IronPDF 是在 C# 应用程序中处理 PDF 的两种常用选择。 在本文中,我们将探讨如何使用iTextSharp合并PDF,并与IronPDF进行比较,以帮助您在选择用于PDF操作的库时做出明智的决定。

如何使用iTextSharp合并PDF文件

以下是如何使用 iTextSharp 合并 PDF 文件的分步指南:

  1. 创建一个新的 Document 对象,并指定 PDF 文件的基本路径。

  2. 打开 "文档 "进行编辑。

  3. 定义要合并的 PDF 文件名数组。

  4. 为列表中的每个 PDF 文件创建一个 PdfReader,将其内容添加到 PdfCopy 对象中,然后关闭 PdfReader

  5. 关闭 "文档",最终完成合并 PDF。

IronPDF

IronPDF 网页是一个 .NET 库,它使开发人员能够在其 C# 和 .NET 应用程序中创建、修改 PDF 文档并与之交互。 它通过提供从头开始生成 PDF、HTML 到 PDF 转换、PDF 操作等功能,简化了与 PDF 相关的任务。(包括添加、删除和修改内容)此外,它还具有交互式表单处理、PDF 合并和拆分、加密和跨平台兼容性等功能,使其成为需要管理和生成 PDF 文档的各种应用程序的重要工具。

iTextSharp

iTextSharp已被 iText 7 取代,因为 iText 7 已达到生命周期终点(到期日),只看到安全修复。 强烈建议使用 iText 7 或考虑将现有的 iText 7 过渡到新项目。 iText 7 具有重大改进,包括 HTML 到 PDF 的转换、PDF 编辑、SVG 支持、更好的语言支持、调试工具、数据提取以及更多模块化功能。 它简化了 PDF 文档的处理,并以 AGPL 和商业许可证提供。

安装 IronPDF 库

要在 Visual Studio 项目中安装 IronPDF NuGet 包,可以按照以下步骤操作:

  1. 首先在 Visual Studio 中打开要使用 IronPDF 库的项目。

  2. 如果使用 Visual Studio,请转到工具 > NuGet 包管理器 > 包管理器控制台。

  3. 在软件包管理器控制台中,运行以下命令安装 IronPDF:
Install-Package IronPdf

Visual Studio 将下载并安装软件包及其依赖项。 您可以在 "输出 "窗口中监控进度。 安装完成后,您就可以开始在 C# 代码中使用 IronPDF 了。

**如何使用 iTextSharp 合并 PDF 文件:图 1 - 在 Visual Studio.** 的内置终端中显示的已完成的安装。

成功安装 IronPDF 后,您就可以开始在项目中使用它了。 您可以在代码文件中加入必要的 "using "语句,然后开始使用 IronPDF 的功能处理 PDF。 导入必要的命名空间,然后根据需要开始处理 PDF。

Using IronPDF;
Using IronPDF;
Dim IronPDF As [Using]
VB   C#

现在,您可以使用 IronPDF 提供的特性和功能,在 C# 项目中处理 PDF 文档。 记住保存项目并构建它,以确保正确集成库。

安装 iTextSharp PDF 库

要在 C# 项目中安装 iTextSharp PDF 库,请按照以下步骤操作:

  1. 在首选的集成开发环境中打开要使用 iTextSharp 库的 C# 项目(IDE)例如 Visual Studio。

  2. 转到工具 > NuGet 包管理器 > 包管理器控制台。

  3. 在软件包管理器控制台中,运行以下命令:
Install-Package iTextSharp

此命令会告诉 NuGet(的软件包管理器)下载 iTextSharp 软件包及其依赖项,并将其安装到项目中。

NuGet 将下载并安装 iTextSharp 软件包和任何所需的依赖项。 您可以在软件包管理器控制台中监控安装进度。

**如何使用 iTextSharp 合并 PDF 文件**:图 2 - Visual Studio 内置终端中显示的已完成的安装。

安装完成后,你会在软件包管理器控制台中看到一条确认信息,表明 iTextSharp 软件包已成功安装。 成功安装 iTextSharp 后,现在就可以开始在项目中使用它了。 您可以在代码文件中加入必要的 "using "语句,然后开始使用 iTextSharp 的功能处理 PDF。

使用 IronPDF 将 PDF 合并为单一 PDF 文档

IronPDF 提供了一种直接的方法来将多个 PDF 文件合并为一个 PDF. 在将 PDF 文档合并为一个 PDF 时,IronPDF 具有极大的灵活性。 以下示例代码演示了如何将 PDF 文件合并为一个 PDF 文件:

static void Main(string [] args)
{
    string basePath = @"D:\PDFFiles\";
    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };
    List<PdfDocument> docList = new List<PdfDocument>();
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }
    var mergedPDF = PdfDocument.Merge(docList);
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
static void Main(string [] args)
{
    string basePath = @"D:\PDFFiles\";
    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };
    List<PdfDocument> docList = new List<PdfDocument>();
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }
    var mergedPDF = PdfDocument.Merge(docList);
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
Shared Sub Main(ByVal args() As String)
	Dim basePath As String = "D:\PDFFiles\"
	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }
	Dim docList As New List(Of PdfDocument)()
	For Each filename As String In pdfFiles
		docList.Add(New PdfDocument(basePath & filename))
	Next filename
	Dim mergedPDF = PdfDocument.Merge(docList)
	mergedPDF.SaveAs(basePath & "mergePDFbyIronPDF.pdf")
End Sub
VB   C#

上述代码使用 IronPDF 库合并两个 PDF 文件("PdfFile_1.pdf "和 "PdfFile_2.pdf")位于指定的基本路径("D:\PDFFiles"). 它创建一个 PdfDocument 对象列表,将输入的 PDF 添加到列表中,然后使用 PdfDocument.Merge 将它们合并为一个 PDF,并将合并后的 PDF 保存为同一基本路径下的 "mergePDFbyIronPDF.pdf"。

以下是本示例中使用的 PDF 示例:

**如何使用 iTextSharp 合并 PDF 文件**:图 3 - 一个简单的 PDF 文件,标题为 一个简单的 PDF 文件,下面有一些正文,还有一篇单页的 PDF 文章。

以下是合并后的 PDF 文件:

**如何使用 iTextSharp 合并 PDF 文件**:图 4 - 合并后的 PDF,简单的 PDF 在前,文章在后。

使用 iTextSharp 合并多个 PDF 文件

iTextSharp 不提供合并 PDF 文件的直接方法。 不过,我们可以通过打开每个输入的 PDF 文件并将其内容添加到输出文档中来实现。 以下示例代码可将 PDF 文件合并为一个 PDF 文档:

static void Main(string [] args)
{
    Document doc = new Document();
    string basePath = @"D:\PDFFiles\";
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));
    doc.Open();

    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    foreach (string filename in pdfFiles)
    {
        PdfReader reader = new PdfReader(basePath + filename);
        copy.AddDocument(reader);
        reader.Close();
    }

    doc.Close();
}
static void Main(string [] args)
{
    Document doc = new Document();
    string basePath = @"D:\PDFFiles\";
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));
    doc.Open();

    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    foreach (string filename in pdfFiles)
    {
        PdfReader reader = new PdfReader(basePath + filename);
        copy.AddDocument(reader);
        reader.Close();
    }

    doc.Close();
}
Shared Sub Main(ByVal args() As String)
	Dim doc As New Document()
	Dim basePath As String = "D:\PDFFiles\"
	Dim copy As New PdfCopy(doc, New FileStream(basePath & "mergePdf.pdf", FileMode.Create))
	doc.Open()

	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }

	For Each filename As String In pdfFiles
		Dim reader As New PdfReader(basePath & filename)
		copy.AddDocument(reader)
		reader.Close()
	Next filename

	doc.Close()
End Sub
VB   C#

上述代码使用 iTextSharp 合并了两个 PDF 文件("PdfFile_1.pdf "和 "PdfFile_2.pdf")从指定的基本路径("D:\PDFFiles")合并成一个名为 "mergePdf.pdf "的 PDF。它通过打开每个输入 PDF,将其内容添加到输出文档,然后关闭文档来实现这一目的。 上述代码将把多个 PDF 文件合并为一个 PDF 文件。

我们使用了以下两个输入文件:

**如何使用 iTextSharp 合并 PDF 文件**:图 5 - 与之前相同的输入 PDF 文件。

我们的代码创建的新文件如下:

**如何使用 iTextSharp 合并 PDF 文件**:图 6 - 合并后的 PDF,简单的 PDF 在前,文章在后。

结论

与 iTextSharp 的比较因此,IronPDF 成为在 C# 应用程序中合并 PDF 文档的上佳选择。 虽然这两个库都能胜任,但 IronPDF 提供了更友好的用户界面、HTML 到 PDF 转换等现代功能、明确的许可选项、通过 NuGet 直接集成以及积极的开发,共同简化了合并过程,减少了开发时间,并确保为 PDF 相关任务提供更可靠的解决方案。 其友好的用户界面、强大的功能集和持续的开发使 IronPDF 成为用 C# 合并 PDF 的卓越解决方案。

< 前一页
iTextsharp HTML转PDF带CSS样式C#示例与IronPDF
下一步 >
Adobe Reader SDK与IronPDF在C#中的比较

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

免费NuGet下载 总下载量: 11,781,565 查看许可证 >