此经验内容将分享如何通过C#代码来分割或切割PDF页面。这里对页面的分割分两种情况:1. 横向分割页面2. 纵向分割页面
工具/原料
Spire.PDF for .NET
Visual Studio
dll文件获取及引用
1、获取方法1:通过官网下载Spire.PDF for .NET包,解压并安装。在代码程序中添加引用Bin文件夹下的Spire.Pdf.dll。(引用结果如下图)获取方式2:通过Nuget网站获取。
C#代码示例
1、using Spire.Pdf;using Spire.Pdf.Graphics;using System.Drawing;namespace SplitPage_PD僻棍募暖F{ class Program { static void Main(string[] args) { //加载PDF文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("test.pdf"); //获取第一页 PdfPageBase page = pdf.Pages[0]; //创建新PDF文档 PdfDocument newPdf = new PdfDocument(); //移除新文档的页边距 newPdf.PageSettings.Margins.All = 0; //横向拆分:设置新文档页面的宽度等于原文档第一页的宽度,页面高度等于原文档第一页高度的二分之一 newPdf.PageSettings.Width = page.Size.Width; newPdf.PageSettings.Height = page.Size.Height / 2; //纵向拆分:设置新文档页面的高度等于原文档第一页的高度,页面宽度等于原文档第一页宽度的二分之一 //newPdf.PageSettings.Width = page.Size.Width / 2; //newPdf.PageSettings.Height = page.Size.Height; //添加新页面到新文档 PdfPageBase newPage = newPdf.Pages.Add(); PdfTextLayout format = new PdfTextLayout(); format.Break = PdfLayoutBreakType.FitPage; format.Layout = PdfLayoutType.Paginate; //根据原文档第一页创建模板,并将模板画到新文档的新添加页面,页面画满之后自动分页 page.CreateTemplate().Draw(newPage, new PointF(0, 0), format); //保存文档 newPdf.SaveToFile("横向拆分.pdf",FileFormat.PDF); //newPdf.SaveToFile("纵向拆分.pdf", FileFormat.PDF); } }}
2、横向分割结果:
3、纵向分割结果: