(资料图)
PDF边距是页面主要内容区域和页面边缘之间的距离。与Word页边距不同,PDF文档的页边距很难更改。因为Adobe没有提供操作页边距的直接方法。但是,您可以通过缩放页面内容来改变页边距。本文将介绍如何在不更改页面大小的情况下使用C#/VB.NET 代码调整PDF文档的页边距。
增加PDF文档的页边距缩短PDF文档的页边距增加PDF文档的页边距扩大PDF文档边距的方法是新建一个页面尺寸更大的PDF,然后在大页面的合适位置绘制源页面。以下是增加 PDF 文档边距的步骤。初始化PdfDocument对象。创建另一个PdfDocument对象,该对象用于创建页面尺寸更大的新PDF文档。设置边距的增加值。计算新PDF文档的页面大小。循环遍历原始文档中的页面,并使用PdfPageBase.CreateTemplate() 方法基于特定页面创建模板。使用PdfDocument.Pages.Add() 方法将页面添加到新的PDF文档中。使用PdfTemplate.Draw() 方法在页面上的坐标(0,0)处绘制模板。使用PdfDocument.SaveToFile()方法将新的PDF文档保存到文件中。完整代码C#
using Spire.Pdf;using Spire.Pdf.Graphics;using System.Drawing;namespace IncreaseMargins{ class Program { static void Main(string[] args) { //加载原始PDF文档 PdfDocument originalPdf = new PdfDocument("极昼极夜是怎么形成的.pdf"); //获取第一页 PdfPageBase firstPage = originalPdf.Pages[0]; //创建新的PdfDocument对象 PdfDocument newPdf = new PdfDocument(); //设置边距的增加值 PdfMargins margins = newPdf.PageSettings.Margins; margins.Top = 40; margins.Bottom = 40; margins.Left = 40; margins.Right = 40; //计算新页面大小 SizeF sizeF = new SizeF(firstPage.Size.Width + margins.Left + margins.Right, firstPage.Size.Height + margins.Top + margins.Bottom); //循环遍历原始文档中的页面 for (int i = 0; i < originalPdf.Pages.Count; i++) { //基于特定页面创建模板 PdfTemplate pdfTemplate = originalPdf.Pages[i].CreateTemplate(); //将页面添加到新的PDF PdfPageBase page = newPdf.Pages.Add(sizeF); //在页面上绘制模板 pdfTemplate.Draw(page, 0, 0); } //保存新文档 newPdf.SaveToFile("增加页边距.pdf", FileFormat.PDF); } }}
VB.NET
Imports Spire.PdfImports Spire.Pdf.GraphicsImports System.DrawingNamespace IncreaseMargins Friend Class Program Private Shared Sub Main(ByVal args As String()) "加载原始PDF文档 Dim originalPdf As PdfDocument = New PdfDocument("极昼极夜是怎么形成的.pdf") "获取第一页 Dim firstPage As PdfPageBase = originalPdf.Pages(0) "创建新的PdfDocument对象 Dim newPdf As PdfDocument = New PdfDocument() "设置边距的增加值 Dim margins As PdfMargins = newPdf.PageSettings.Margins margins.Top = 40 margins.Bottom = 40 margins.Left = 40 margins.Right = 40 "计算新页面大小 Dim sizeF As SizeF = New SizeF(firstPage.Size.Width + margins.Left + margins.Right, firstPage.Size.Height + margins.Top + margins.Bottom) "循环遍历原始文档中的页面 For i As Integer = 0 To originalPdf.Pages.Count - 1 "基于特定页面创建模板 Dim pdfTemplate As PdfTemplate = originalPdf.Pages(i).CreateTemplate() "将页面添加到新的PDF Dim page As PdfPageBase = newPdf.Pages.Add(sizeF) "在页面上绘制模板 pdfTemplate.Draw(page, 0, 0) Next "保存新文档 newPdf.SaveToFile("增加页边距.pdf", FileFormat.PDF) End Sub End ClassEnd Namespace效果图缩小PDF文档的页边距
缩小PDF 边距的方法是新建一个页面尺寸较小的PDF,然后在指定坐标的小页面上绘制源页面。以下是使用 Spire.PDF for .NET 缩小 PDF 文档边距的步骤。
在初始化PdfDocument对象时加载原始PDF文档。创建另一个PdfDocument对象,该对象用于创建页面尺寸较小的新PDF文档。设置边距的减少值。计算新PDF文档的页面大小。循环遍历原始文档中的页面,并使用PdfPageBase.CreateTemplate() 方法基于特定页面创建模板。使用PdfDocument.Pages.Add() 方法将页面添加到新的PDF文档中。使用PdfTemplate.Draw() 方法在页面上的指定坐标处绘制模板。使用PdfDocument.SaveToFile() 方法将新的PDF文档保存到文件中。完整代码C#
using Spire.Pdf;using Spire.Pdf.Graphics;using System.Drawing;namespace DecreaseMargins{ class Program { static void Main(string[] args) { //加载原始PDF文档 PdfDocument originalPdf = new PdfDocument("极昼极夜是怎么形成的.pdf"); //获取第一页 PdfPageBase firstPage = originalPdf.Pages[0]; //创建新的PdfDocument对象 PdfDocument newPdf = new PdfDocument(); //设置边距的减少值 float left = -20; float right = -20; float top = -20; float bottom = -20; //计算新页面大小 SizeF sizeF = new SizeF(firstPage.Size.Width + left + right, firstPage.Size.Height + top + bottom); //循环遍历原始文档中的页面 for (int i = 0; i < originalPdf.Pages.Count; i++) { //基于特定页面创建模板 PdfTemplate pdfTemplate = originalPdf.Pages[i].CreateTemplate(); //将页面添加到新的PDF PdfPageBase page = newPdf.Pages.Add(sizeF, new PdfMargins(0)); //在页面上绘制模板 pdfTemplate.Draw(page, left, top); } //保存新文档 newPdf.SaveToFile("缩小页边距.pdf", FileFormat.PDF); } }}
VB.NET
Imports Spire.PdfImports Spire.Pdf.GraphicsImports System.DrawingNamespace DecreaseMargins Friend Class Program Private Shared Sub Main(ByVal args As String()) "加载原始PDF文档 Dim originalPdf As PdfDocument = New PdfDocument("极昼极夜是怎么形成的.pdf") "获取第一页 Dim firstPage As PdfPageBase = originalPdf.Pages(0) "创建新的PdfDocument对象 Dim newPdf As PdfDocument = New PdfDocument() "设置边距的减少值 Dim left As Single = -20 Dim right As Single = -20 Dim top As Single = -20 Dim bottom As Single = -20 "计算新页面大小 Dim sizeF As SizeF = New SizeF(firstPage.Size.Width + left + right, firstPage.Size.Height + top + bottom) "循环遍历原始文档中的页面 For i As Integer = 0 To originalPdf.Pages.Count - 1 "基于特定页面创建模板 Dim pdfTemplate As PdfTemplate = originalPdf.Pages(i).CreateTemplate() "将页面添加到新的PDF Dim page As PdfPageBase = newPdf.Pages.Add(sizeF, New PdfMargins(0)) "在页面上绘制模板 pdfTemplate.Draw(page, left, top) Next "保存新文档 newPdf.SaveToFile("缩小页边距.pdf", FileFormat.PDF) End Sub End ClassEnd Namespace效果图
—本文完—
上一篇:亮身份 强党性 做表率—咸阳永寿县店头镇开展“四亮”转作风活动
下一篇:最后一页
7月8日,北京市文化和旅游局发布2021年北京市文化和旅游业统计报告,2021年北京接待市民在京游人数1 26亿人次,较上年增长45 9%,较2019年
5月14日,郑州经开区第五大街一地铁口,一个核酸采样舱已布点就位,市民有序进行核酸采样。郑州经开区宣传部供图近日,河南省发布《河南省
稳就业保民生。由人力资源和社会保障部主办,河南省人力资源和社会保障厅承办的河南省2022年百日千万网络招聘专项行动将于5月16日启动,持
政策内容由河南省(郑州市)12320卫生健康热线整理(截至2022年5月15日上午9时)01进入郑州市市域外入(返)郑人员须查验两码一证,即健康
5月15日是全国公安机关5 15打击和防范经济犯罪宣传日,河南省公安厅公布一批经济犯罪案件,作案手法曝光。信阳宋某等人组织领导传销活动案2
X 关闭
X 关闭