Spire.PDF是一个专业的PDF组件,能够独立地创建、编写、编辑、操作和阅读PDF文件,支持 .NET、Java、WPF和Silverlight。
PDF的页边距是指页面的主内容区域和页面边缘之间的距离。它和Word的页边距不同,PDF文档中的页边距很难更改。因为Adobe没有提供直接的方法用于操作页边距。 但是我们可以通过缩放页面内容,从而达到改变页边距的目的。本文将为你介绍如何在不改变页面大小的情况下,使用Spire.PDF调整页边距。
//创建PDFDocument实例并加载文档
PdfDocument testDoc = new PdfDocument();
testDoc.LoadFromFile(@"F:\201711工作\Demo-PDF\Spire.Pdf\Demos\Data\AddImageStamp.pdf");
//创建一个新文档实例
PdfDocument newDoc = new PdfDocument();
//定义新文档要增加的页边距
float top = 50;
float bottom = 50;
float left = 50;
float right = 50;
foreach (PdfPageBase page in testDoc.Pages)
{
//给新文档添加新页面,设置页面大小与源文档相同
PdfPageBase newPage = newDoc.Pages.Add(page.Size, new PdfMargins(0));
//设置新文档内容的缩放比例
newPage.Canvas.ScaleTransform((page.ActualSize.Width - left - right)/page.ActualSize.Width ,
(page.ActualSize.Height - top - bottom)/page.ActualSize.Height);
//以模板的形式将源文档画到新文档
newPage.Canvas.DrawTemplate(page.CreateTemplate(), new PointF(left, top));
}
//保存并打开结果文档
newDoc.SaveToFile(@"result.pdf", FileFormat.PDF);
System.Diagnostics.Process.Start(@"result.pdf");复制代码
源文档:
结果文档:
Spire.PDF还有一套完整的视频教程:《Spire.PDF通用基础教学视频》,免费学习~