在整理文件时,将多个同类型文档合并是实现文档归类的有效方法,也便于文档管理或者文档传输。当然,也可以对一些比较大的文件进行拆分来获取自己想要的部分文档。下面将通过C#代码示例介绍如何将多个PDF文档合并为一个,以及将一个PDF文档拆分为多个PDF文档。
使用工具:
Free Spire.PDF for .NET(免费版)
C# 代码示例(供参考)
【示例1】合并多个PDF文档
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);
}
}
}【示例2】拆分PDF文档
(一)按每页来拆分
using System;
using Spire.Pdf;
namespace SplitPDF1
{
class Program
{
static void Main(string[] args)
{
//初始化一个Pdfdocument类实例,并从文件中加载需要被拆分的PDF文档
Pdfdocument doc = new Pdfdocument(@"C:UsersAdministratorDesktoptest.pdf");
//调用方法Split()方法将PDF文档按页拆分保存
String pattern = "拆分{0}.pdf";
doc.Split(pattern);
}
}
}拆分结果:
拆分的文档个数与原文档页数相同。
(二)按指定页数拆分
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:UsersAdministratorDesktop测试.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));
}
//保存文档
pdf3.SaveToFile("11-15.pdf");
}
}
}阅读拓展:C#合并、拆分PDF文档(视频教程)
(本文完)



