使用 iTextSharp 在 .NET Core 中进行 PDF 管理之合并 PDF

介绍

在当今的数字时代,以编程方式管理 PDF 文档是许多应用程序的常见要求。无论是生成报告和发票还是合并多个 PDF 文件,拥有合适的工具都可以显著简化开发流程。在本文中,我们将探讨如何利用 iTextSharp(一种用于处理 C# 中 PDF 的流行库)在 .NET Core 应用程序中无缝合并 PDF 文件。

iTextSharp 是一个功能强大的库,用于在 C# 中创建和操作 PDF 文档。它提供了一套全面的功能,用于读取、写入和修改 PDF 文件。借助 iTextSharp,开发人员可以轻松生成动态 PDF 内容、添加注释、加密文档等等。

设置环境

首先,请确保您的开发机器上安装了 .NET Core。您可以使用您喜欢的 IDE 或命令行创建一个新的 .NET Core 项目。

接下来,通过在包管理器控制台中运行以下命令将 iTextSharp NuGet 包添加到您的项目中:

复制代码
dotnet add package itext7

此命令将把最新版本的 iTextSharp 及其依赖项安装到您的项目中。

合并 PDF 文件

现在我们已经设置好了环境,让我们深入研究合并 PDF 文件。下面是一个简单的示例,演示如何使用 iTextSharp 合并两个 PDF 文件:

复制代码
// 引入 iText.Kernel.Pdf 命名空间
using iText.Kernel.Pdf;
// 引入 iText.Kernel.Utils 命名空间
using iText.Kernel.Utils;

// 定义 Program 类
class Program
{
    // 定义 Main 方法,程序入口
    static void Main(string[] args)
    {
        // 要合并的 PDF 文件数组
        string[] filesToMerge = { "file1.pdf", "file2.pdf" };
        // 合并后的 PDF 文件名
        string mergedFile = "merged.pdf";

        // 使用 PdfWriter 创建写入流,生成合并后的 PDF 文件
        using (PdfWriter writer = new PdfWriter(mergedFile))
        {
            // 创建 PdfDocument 实例,用于合并后的 PDF 文件
            using (PdfDocument pdf = new PdfDocument(writer))
            {
                // 创建 PdfMerger 实例,执行 PDF 合并操作
                PdfMerger merger = new PdfMerger(pdf);

                // 遍历要合并的 PDF 文件数组
                foreach (string file in filesToMerge)
                {
                    // 使用 PdfReader 打开每个源 PDF 文件
                    PdfDocument sourcePdf = new PdfDocument(new PdfReader(file));
                    // 将源 PDF 文件的所有页面合并到目标 PDF 文件
                    merger.Merge(sourcePdf, 1, sourcePdf.GetNumberOfPages());
                    // 关闭源 PDF 文件
                    sourcePdf.Close();
                }
            } // 关闭 PdfDocument 实例
        } // 关闭 PdfWriter 实例

        // 输出合并成功消息
        Console.WriteLine("PDF files merged successfully!");
    }
}

在此示例中,我们创建一个 PdfMerger 对象并遍历要合并的 PDF 文件列表。我们打开每个源 PDF 文件,将其页面合并到目标 PDF 文档中,然后关闭源 PDF。最后,我们将合并的 PDF 文档保存到新文件中。

结论

iTextSharp 简化了 .NET Core 应用程序中的 PDF 操作,使开发人员能够轻松执行复杂的任务。在本文中,我们重点介绍了合并 PDF 文件,但 iTextSharp 提供了广泛的功能来处理 PDF 生成和修改的各个方面。尝试使用不同的功能来增强您的 PDF 管理能力并简化应用程序的工作流程。

相关推荐
asdzx679 分钟前
在 React 中轻松实现 PDF 转 Word:纯前端 WASM 方案实战
前端·react.js·pdf
极***技19 分钟前
2026云原生核心!Go高并发限流实战,从原理到落地
开发语言·云原生·golang
牛大了20231 小时前
场景题:数据迁移解决方案
开发语言
认真的酒窝9 小时前
自己动手开发编译器(十一)语义分析
java·开发语言
Lyn_Li9 小时前
扫描 PDF 歪了怎么办?用 6 种检测方法做本地批量扶正(附开源工具)
python·pdf·ocr·tesseract·开源工具·文档处理·本地处理·扫描件纠偏
wbs_scy11 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录91711 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞11 小时前
C#与闭包
开发语言·c#
端庄的战斗机11 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme12 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法