> 文章列表 > C#缩放PDF文件

C#缩放PDF文件

C#缩放PDF文件

项目上有个功能需求:将原PDF进行缩放至原先的90%大小

使用的是spire.pdf插件,但是官方文档上的缩放只是改变显示,最终文件其实没有缩放成功。遂找到了另外的方式进行重绘。

上代码:

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;Console.WriteLine("Hello, World!");
string pdfname = AppDomain.CurrentDomain.BaseDirectory + "test.pdf";
string pdfname_new = AppDomain.CurrentDomain.BaseDirectory + "new.pdf";
PdfDocument pdf = new PdfDocument(pdfname);
var newpd = new PdfDocument();
foreach (PdfPageBase pageBase in pdf.Pages)
{var pdfmarin = new PdfMargins(0);var newpage = newpd.Pages.Add(pageBase.ActualSize, pdfmarin);//0.9即为缩放至原先的0.9大小newpage.Canvas.DrawTemplate(pageBase.CreateTemplate(), new PointF(20, 20), new SizeF(pageBase.Size.Width * 0.9f, pageBase.Size.Height * 0.9f));
}
newpd.SaveToFile(pdfname_new);
Console.WriteLine("Down");

效果图

缩放前:

缩放90%后: