• <menu id="w2i4a"></menu>
  • logo Spire.PDF教程

    文檔首頁>>Spire.PDF教程>>PDF管理控件Spire.PDF使用教程:添加打印按鈕并打印自定義紙張大小

    PDF管理控件Spire.PDF使用教程:添加打印按鈕并打印自定義紙張大小


    Spire.PDF是一個(gè)專業(yè)的PDF組件,能夠獨(dú)立地創(chuàng)建、編寫、編輯、操作和閱讀PDF文件,支持 .NET、Java、WPF和Silverlight。Spire.PDF的PDF API擁有豐富的功能,如安全設(shè)置(包括數(shù)字簽名)、PDF文本/附件/圖片提取、PDF文件合并/拆分、元數(shù)據(jù)更新、章節(jié)和段落優(yōu)化、圖形/圖像描繪和插入、表格創(chuàng)建和處理、數(shù)據(jù)導(dǎo)入等等。

    >>Spire.PDF更新至最新版v5.9.6,歡迎下載體驗(yàn)

    C# 自定義紙張大小打印 PDF

    當(dāng)打印PDF文檔的時(shí)候,默認(rèn)情況下紙張大小是A4。但是有些情況下原文檔不是A4大小,我們需要保持原來的頁面大小怎么辦呢?這個(gè)時(shí)候就需要自定義紙張大小來實(shí)現(xiàn)這個(gè)功能。

    情況1:使用虛擬打印機(jī)自定義紙張大小打印,比如保持原來頁面大小打印到PDF。

    //加載需要打印的PDF文檔
    Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
    doc.LoadFromFile(FileName);
    
    //獲取原文檔第一頁的紙張大小,這里的單位是Point
    SizeF size = doc.Pages[0].Size;
    
    //實(shí)例化PaperSize對(duì)象,設(shè)置其寬高
    //需要特別注意的是這里涉及到單位的轉(zhuǎn)換,PaperSize的寬高參數(shù)默認(rèn)單位是百英寸 
    PaperSize paper = new PaperSize("Custom", (int)size.Width/72*100, (int)size.Height/72*100);
    paper.RawKind = (int)PaperKind.Custom;
    
    //設(shè)置打印的紙張大小為原來文檔的大小
    doc.PrintSettings.PaperSize = paper;
    
    //需要選擇FitSize打印模式
    doc.PrintSettings.SelectSinglePageLayout(PdfSinglePageScalingMode.FitSize, true);
    //打印
    doc.Print();

    情況2:使用真實(shí)打印機(jī)設(shè)置紙盒中的紙張大小打印,比如原來A4的文檔打印成A3的大小。

    //加載需要打印的PDF文檔
     Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
     doc.LoadFromFile(FileName);
    
     PaperSize p = null;
     //實(shí)例化一個(gè)PrintDocument對(duì)象來獲取當(dāng)前打印機(jī)的紙盒信息
     PrintDocument printDoc = new PrintDocument();
    
     //遍歷打印機(jī)紙盒里面的紙張,找到需要的A3
    foreach (PaperSize ps in printDoc.PrinterSettings.PaperSizes)
                {
                    if (ps.PaperName.Equals("A3"))
                    {
                        p = ps;
                        break;
                    }
                   
                }
    
     //設(shè)置打印的紙張大小為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;
    //在第一頁創(chuàng)建一個(gè)PdfButtonField實(shí)例,并為按鈕設(shè)置屬性
    PdfPageBase page = doc.Pages[0];
    PdfButtonField button = new PdfButtonField(page, "Print");
    //設(shè)置按鈕屬性
    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");

    效果圖:

    PDF管理控件Spire.PDF使用教程:添加打印按鈕并打印自定義紙張大小

    *國慶大放價(jià) ,不限量超值優(yōu)惠券免費(fèi)領(lǐng)取,更多活動(dòng)詳情咨詢?cè)诰€客服了解哦~


    掃描關(guān)注“慧聚IT”微信公眾號(hào),及時(shí)獲取更多產(chǎn)品最新動(dòng)態(tài)及最新資訊

    1562572142.jpg

    Spire-850x100.png


    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();