多语言展示
当前在线:1219今日阅读:27今日分享:41

C# 合并、拆分PDF文件

在整理文件时,将多个同类型文档合并是实现文档归类的有效方法,也便于文档管理或者文档传输。当然,也可以对一些比较大的文件进行拆分来获取自己想要的部分文档。那么在C#语言环境中怎么来实现PDF文档的和被拆分呢?下面将介绍具体的代码操作方法。
工具/原料
1

Free Spire.PDF for .NET 4.3(社区版)

2

Visual Studio

合并多个PDF文档

【C#】using System;using Spire.Pdf; namespace MergePDF{    class Program    {        static void Main(string[] args)        {            //创建一组数组实例,数组元素为需要合并的多个PDF文档的路径            String[] files = new String[] { 'test1.pdf', 'test2.pdf', 'test3.pdf' };            //调用方法MergeFiles()合并文档            PdfDocumentBase doc = PdfDocument.MergeFiles(files);            //保存文档            doc.Save('合并.pdf', FileFormat.PDF);        }    }}

拆分PDF文档
1

(一)按每页来拆分【C#】using System;using Spire.Pdf; namespace SplitPDF1{    class Program    {        static void Main(string[] args)        {            //初始化一个PdfDocument类实例,并从文件中加载需要被拆分的PDF文档            PdfDocument doc = new PdfDocument(@'C:\Users\Administrator\Desktop\test.pdf');             //调用方法Split()方法将PDF文档按页拆分保存            String pattern = '拆分{0}.pdf';            doc.Split(pattern);        }    }}

2

(二)按指定页数拆分【C#】using Spire.Pdf;using Spire.Pdf.Graphics;using System.Drawing;  namespace SplitPDF2{    class Program    {        static void Main(string[] args)        {            //创建一个PdfDocument类对象,并加载一个现有的PDF文档            PdfDocument pdf = new PdfDocument();            pdf.LoadFromFile(@'C:\Users\Administrator\Desktop\测试.pdf');            //新建1个PDF文档            PdfDocument pdf1 = new PdfDocument();            PdfPageBase page;            //将现有的PDF文档的第1-5页拆分为一个文档            for (int i = 0; i < 4; i++)            {                //向新建文档添加与现有文档页面大小一致的页面                page = pdf1.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                //为现有文档的页面创建模板并将模板画到新建文档的页面上                pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));            }            //保存文档            pdf1.SaveToFile('1-5.pdf');             //新建第2个PDF文档            PdfDocument pdf2 = new PdfDocument();            //将现有PDF文档的第5-10页拆分为另一个文档            for (int i = 4; i < 9; i++)            {                //向新建文档添加与现有文档页面大小一致的页面                page = pdf2.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                //为现有文档的页面创建模板并将模板画到新建文档的页面上                pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));            }            //保存文档            pdf2.SaveToFile('6-10.pdf');             //新建第3个PDF文档            PdfDocument pdf3 = new PdfDocument();            //将现有PDF文档的第10-15页拆分为另一个文档            for (int i = 9; i < 14; i++)            {                //向新建文档添加与现有文档页面大小一致的页面                page = pdf3.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));                //为现有文档的页面创建模板并将模板画到新建文档的页面上                pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));            }            //保存文档            pdf2.SaveToFile('11-15.pdf');        }    }}

注意事项

合并的PDF文档是以新的一页来合并的文档,目的不是将多个文档合并为具有一定逻辑的文档,而是出于方便文档管理以及其他操作的目的来合并。

推荐信息