首页 > 其他分享 >使用 iTextSharp 在 .NET Core 中进行 PDF 管理之合并 PDF

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

时间:2024-06-08 11:59:59浏览次数:20  
标签:文件 Core PdfDocument 合并 iTextSharp new 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 管理能力并简化应用程序的工作流程。

标签:文件,Core,PdfDocument,合并,iTextSharp,new,PDF
From: https://blog.csdn.net/xiefeng240601/article/details/139544712

相关文章

  • 使用itextPDF实现PDF电子公章工具类
    使用itextPDF实现PDF电子公章工具类一、制作公章在线网站:印章生成器-Kalvin在线工具(kalvinbg.cn)然后对公章进行下载保存盖章图片:二、生成数字签名2.1:java工具keytool生成p12数字证书文件Keytool是用于管理和证书的工具,位于%JAVA_HOME%/bin目录。使用JDK的keytool......
  • Asp .Net Core 系列:详解鉴权(身份验证)以及实现 Cookie、JWT、自定义三种鉴权 (含源码解
    什么是鉴权(身份验证)?https://learn.microsoft.com/zh-cn/aspnet/core/security/authentication/?view=aspnetcore-8.0定义鉴权,又称身份验证,是确定用户身份的过程。它验证用户提供的凭据(如用户名和密码)是否有效,并据此确认用户是否具备访问系统的权利。过程用户向系统提供......
  • 跟着杨中科学习(四)EFCore(二)
    主键自增主键自动增长。优点:简单;缺点:数据库迁移以及分布式系统中比较麻烦;并发性能差。long、int等类型主键,默认是自增。因为是数据库生成的值,所以SaveChanges后会自动把主键的值更新到Id属性。试验一下。场景:插入帖子后,自动重定向帖子地址。自增字段的代码中不能......
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
    .netcore使用js,.netcore使用javascript,在.netcore项目中怎么使用javascript我项目里需要用到“文字编码”,为了保证前端和后端的编码解码不处bug,所以,我在项目中用了这个下面推荐之前在.netF4.0时的方法文章一:c#解码js的escape_c#escape-CSDN博客文章二:c#对js......
  • 怎么给PDF文档进行加密操作?
    作为一名专业技术人员,有必要确保文件的安全,以避免文件内容被泄露。尤其是机密文件,或者政策文件。现在PDF格式如此流行,当然需要对PDF文件进行加密,那么如何给PDF文档加密呢?一、PDF格式的官方编辑器Adobeacrobat软件为我们提供了两种方式:口令加密和证书加密其中口令加密包含打开文......
  • CorelDRAW 全称“CorelDRAW Graphics Suite
    箭头在各种场景中被广泛使用。在设计中,设计师可以根据设计的目的和受众,巧妙地运用箭头来传达信息、创造视觉效果或引导观者的注意力。在CDR软件中可以为设计添加箭头,那具体该怎么做呢?下面由我带大家一起来了解CoreIDRAW箭头形状工具在哪里,CoreIDRAW箭头形状怎么改成曲线的相关......
  • ASP.NET Core MVC 练习项目
    目录一、开发环境二、项目搭建2.1创建ASP.NETMVC项目2.2导入相关程序包2.3创建模型类、数据库上下文2.4配置连接数据库、配置数据库上下文、注册数据库上下文2.5数据迁移、添加初始数据三、业务实现3.1新建接口类文件夹IService,并在文件夹中创建IGetService接......
  • ASP.NET Core MVC 接上篇新增加“增删改查”操作
    前言由于上一篇文章只写了怎么创建项目以及一个查询操作,这篇文章将把增删改查的操作补齐,希望能帮助到一同学习的小伙伴,内容中如有不懂的点,可参考ASP.NETCore官方文档,如有写的不对的,请在评论区补充,主打听劝;增删改查接口类publicinterfaceIGetService<T>whereT:cl......
  • OPA197IDBVR精密运算放大器芯片中文资料PDF数据手册引脚图产品参数特性
    OPA197的说明OPAx197系列(OPA197、OPA2197和OPA4197)是新一代36V运算放大器。这些器件具有出色的直流精度和交流性能,包括轨至轨输入/输出、低偏移(典型值为±25µV)、低温漂(典型值为±0.25µV/°C)和10MHz带宽。OPAx196拥有拥有诸多独一无二的特性,例如电源轨的差分输......
  • OPA1679QRUMRQ1音频运算放大器中文资料PDF数据手册引脚图产品参数特性
    OPA1679-Q1的说明双通道OPA1678-Q1和四通道OPA1679-Q1(OPA167x-Q1)运算放大器提供更高的系统级性能在音频电路中常用的传统运算放大器上。OPA167x-Q1放大器实现了低噪声密度为4.5nV/√Hz,0kHz时失真低至0001.1%,其中提高音频信号保真度。这些器件还提供轨到轨输出摆......