解决方案 »

  1.   

    去问 Adobe 技术支持。如果没有技术支持,那么只好作罢。
      

  2.   

    ...E 楼主用Aspose.Pdf.打印吧,那里面能取得PDF的页数的。
    另一种极端就是用Aspose.pdf把原来的PDF文件拆分,然后再一页一页的打。
    我之前就是用这个整出来的。
      

  3.   


    你好~意思是,我可以调出来打印设置的dialog,设置完点击打印后,我的程序能获得dialog里设置的页数的值吗??
      

  4.   


    你好~意思是,我可以调出来打印设置的dialog,设置完点击打印后,我的程序能获得dialog里设置的页数的值吗??Aspose.Pdf 他可以让你打印从第几页到第几页的。 至于对话框你可自己自己弄个Setting介面 把下面的设置放到对话框里就可以了,我们都这么用的。 Aspose.Pdf.Document doc = new Aspose.Pdf.Document(Application.StartupPath + "\\DOC-27728-20130619-083545.pdf");
                Aspose.Pdf.Facades.PdfViewer pdfv = new Aspose.Pdf.Facades.PdfViewer(doc);
                //create objects for printer and page settings and PrintDocument
                System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings();
                System.Drawing.Printing.PageSettings pgs = new System.Drawing.Printing.PageSettings();            //specify your printer name 这里你就是把这些参数弄个自己的对话框就可以了。
                ps.PrinterName = "XXX";打印机名称
                ps.PrintRange = PrintRange.SomePages;
                ps.FromPage = 1; 开始页
                ps.ToPage = 2;结束页            //set PageSize (if required)
                pgs.PaperSize = new System.Drawing.Printing.PaperSize("A4", 827, 1169);            //set PageMargins (if required)
                pgs.Margins = new System.Drawing.Printing.Margins(0, 0, 0, 0);            //Here you can set the PaperSource which you want to use as per your printer.
                pgs.PaperSource = ps.PaperSources[0];            //print document using printer and page settings
                pdfv.PrintDocumentWithSettings(pgs, ps);