产品比较

如何使用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 的改进包括 HTML 转换、PDF 编辑、SVG 支持、更好的语言支持和调试。强烈建议使用 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.10 刚刚发布

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