PDF管理控件Spire.PDF使用教程:添加打印按钮并打印自定义纸张大小

当打印PDF文档的时候,默认情况下纸张大小是A4。但是有些情况下原文档不是A4大小,我们需要保持原来的页面大小怎么办呢?

>>Spire.PDF更新至最新版v5.9.6,欢迎下载体验

C# 自定义纸张大小打印 PDF

当打印PDF文档的时候,默认情况下纸张大小是A4。但是有些情况下原文档不是A4大小,我们需要保持原来的页面大小怎么办呢个时候就需要自定义纸张大小来实现这个功能。

情况1:使用虚拟打印机自定义纸张大小打印,比如保持原来页面大小打印到PDF。

//加载需要打印的PDF文档Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();doc.LoadFromFile(FileName);//获取原文档第一页的纸张大小,这里的单位是PointSizeF size = doc.Pages[0].Size;//实例化PaperSize对象,设置其宽高//需要特别注意的是这里涉及到单位的转换,PaperSize的宽高参数默认单位是百英寸 PaperSize paper = new PaperSize("Custom", (int)size.Width/72*100, (int)size.Height/72*100);paper.RawKind = (int)PaperKind.Custom;//设置打印的纸张大小为原来文档的大小doc.PrintSettings.PaperSize = paper;//需要选择FitSize打印模式doc.PrintSettings.SelectSinglePageLayout(PdfSinglePageScalingMode.FitSize, true);//打印doc.Print();

情况2:使用真实打印机设置纸盒中的纸张大小打印,比如原来A4的文档打印成A3的大小。

//加载需要打印的PDF文档 Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument(); doc.LoadFromFile(FileName); PaperSize p = null; //实例化一个PrintDocument对象来获取当前打印机的纸盒信息 PrintDocument printDoc = new PrintDocument(); //遍历打印机纸盒里面的纸张,找到需要的A3foreach (PaperSize ps in printDoc.PrinterSettings.PaperSizes)            {                if (ps.PaperName.Equals("A3"))                {                    p = ps;                    break;                }                           } //设置打印的纸张大小为A3 doc.PrintSettings.PaperSize = p; //打印 doc.PrintSettings.SelectSinglePageLayout(PdfSinglePageScalingMode.FitSize, true); doc.Print();

C# 在 PDF 文档中添加打印按钮

代码:

//加载PDF文档PdfDocument doc = new PdfDocument("Input.pdf");doc.AllowCreateForm = true;//在第一页创建一个PdfButtonField实例,并为按钮设置属性PdfPageBase page = doc.Pages[0];PdfButtonField button = new PdfButtonField(page, "Print");//设置按钮属性button.Bounds = new RectangleF(280, 600, 50, 20);button.BorderColor = new PdfRGBColor(Color.AliceBlue);button.BorderStyle = PdfBorderStyle.Solid;button.ForeColor = new PdfRGBColor(Color.White);button.BackColor = new PdfRGBColor(Color.Blue);button.ToolTip = "Print";button.Text = "Print";button.Font = new PdfFont(PdfFontFamily.Helvetica, 9f);//将打印功能添加到按钮中button.AddPrintAction();//添加按钮doc.Form.Fields.Add(button);//保存文档doc.SaveToFile("Output.pdf");

效果图:

Spire-850x100.png

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年8月23日
下一篇 2019年8月23日

相关推荐

发表回复

登录后才能评论