C#缩放PDF文件
使用的是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%后: