PDFsharp:打印时如何摆脱Adobe Reader?

时间:2013-06-26 15:38:15

标签: pdfsharp

当我使用以下代码在c#中打印带有PDFsharp的pdf文件

            printDocument1.PrinterSettings = printDialog1.PrinterSettings;
            PdfFilePrinter.AdobeReaderPath = @"C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe";
            PdfFilePrinter printer = new PdfFilePrinter(pdfFilename, printDocument1.PrinterSettings.PrinterName);

            try
            {
                printer.Print();
            }
            catch (Exception ex)
            {                    
                throw new NotImplementedException();
            }                

,打印时一切都很好,但我不喜欢的一件事是AdobeReader弹出。 如何通过代码关闭此弹出窗口?

请帮忙。

1 个答案:

答案 0 :(得分:1)

PdfFilePrinter类使用Process.Start启动Adobe Reader。您可以使用ProcessStartInfo选项,也许您可​​以获得所需的行为(最小化启动或根本没有窗口等)。

PDFsharp是开源的,PdfFilePrinter类包含在源包中。 IIRC这个课程是在Adobe Reader 5或6的时代开发的。也许Adobe Reader 10或XI可以通过略微修改的方式调用它们。

我没有时间亲自尝试,但如果您能改善问题,我想听听您的意见。

或者打印后关闭Adobe Reader的问题是什么?这将更加困难,因为你必须找到读者完成打印的时间。