zoukankan      html  css  js  c++  java
  • c# 打印

    两种方法:adobe PDF或gs,统一之处都是先把控件画在printDocument(控件)上,保存为gs文件,然后转成PDF打印

    case "Adobe PDF":
                                    #region  Adobe
                                    PrintReport.PrinterSettings.PrinterName = DBConnection.printer;//PrintReport即printDocument控件
                                    PrintReport.DefaultPageSettings.PaperSize = new PaperSize("Custom", 745, 1050);
                                    PrintReport.DefaultPageSettings.Margins.Right = 70;
                                    PrintReport.DefaultPageSettings.Margins.Top = 90;
                                    PrintReport.PrinterSettings.PrintToFile = true;
                                    PrintReport.PrinterSettings.PrintFileName = @"indocument.ps";
                                    PrintReport.PrintController = new StandardPrintController();
                                    PrintReport.Print();
                                    Process p_adobe = Process.Start(Application.StartupPath + @"/Acrobat/acrodist.exe");
                                    p_adobe.WaitForExit();
                                    Focus();
                                    UpFile(@"outdocument.pdf", SeriesID.Replace('*', 'x') + ".pdf");//利用ftp上传,可以忽略
                                    #endregion
                                    break;
                                default:
                                    #region gs
                                    PrintReport.PrinterSettings.PrinterName = DBConnection.printer;
                                    PrintReport.DefaultPageSettings.PaperSize = new PaperSize("Custom", 745, 1050);
                                    PrintReport.DefaultPageSettings.Margins.Right = 70;
                                    PrintReport.DefaultPageSettings.Margins.Top = 90;
                                    PrintReport.PrinterSettings.PrintToFile = true;
                                    PrintReport.PrinterSettings.PrintFileName = @"gs/document.ps";
                                    PrintReport.PrintController = new StandardPrintController();
                                    PrintReport.Print();
                                    Environment.CurrentDirectory = Application.StartupPath + "/gs";
                                    Process pros = Process.Start("ps2pdf.bat", "document.ps");
                                    pros.WaitForExit();
                                    Environment.CurrentDirectory = Application.StartupPath;
                                    Focus();
                                    UpFile(@"gs/document.pdf", SeriesID.Replace('*', 'x') + ".pdf");
                                    #endregion
                                    break;
    
  • 相关阅读:
    各种排序算法的时间复杂度和空间复杂度
    fork/join框架
    全文检索之solr学习
    【设计模式最终总结】概述、分类、原则
    ASP.NET MVC5+EF6+EasyUI 后台管理系统(75)-微信公众平台开发-用户管理
    下拉列表自己封装的
    下拉列表
    一个原生的JavaScript拖动方法
    JavaScript的jsonp
    angular2 的依赖注入
  • 原文地址:https://www.cnblogs.com/gaara-zhang/p/9663277.html
Copyright © 2011-2022 走看看