【问题标题】:Printing various pdf files with print dialog visible from asp.net使用从 asp.net 可见的打印对话框打印各种 pdf 文件
【发布时间】:2015-05-17 20:49:20
【问题描述】:

我正在一个 asp.net 项目中创建 pdf 文件,该项目存储在服务器上的一个文件夹中。当用户想要打印此文件时,我需要用户指定网络上所有标签打印机中的哪台打印机,因为它也可能包含数字激光打印机。 我已尝试创建打印过程,但这会将 pdf 文件直接发送到默认打印机。有没有办法显示打印对话框以便用户选择所需的打印机?

            printjob.StartInfo.FileName = pdfFileName;<br/>
            printjob.StartInfo.Verb = "Print";<br/>
            printjob.StartInfo.CreateNoWindow = false;<br/>
            printjob.StartInfo.WindowStyle =         System.Diagnostics.ProcessWindowStyle.Normal;
            PrinterSettings setting = new PrinterSettings();<br/>
            printjob.Start();

【问题讨论】:

    标签: c# asp.net pdf printing


    【解决方案1】:

    这可以通过 Spire.pdf.dll 参考来实现。 要安装这个 Open package manager 控制台并输入 Install-Package Spire.pdf。这将安装 spire.pdf。现在下面的代码将帮助您打印 pdf 文件。

            PdfDocument doc = new PdfDocument();
            doc.LoadFromFile("D:\\sample.pdf");
    
            //Use the default printer to print all the pages
            //doc.PrintDocument.Print();
    
            //Set the printer and select the pages you want to print
    
            PrintDialog dialogPrint = new PrintDialog();
            dialogPrint.AllowPrintToFile = true;
            dialogPrint.AllowSomePages = true;
            dialogPrint.PrinterSettings.MinimumPage = 1;
            dialogPrint.PrinterSettings.MaximumPage = doc.Pages.Count;
            dialogPrint.PrinterSettings.FromPage = 1;
            dialogPrint.PrinterSettings.ToPage = doc.Pages.Count;
    
            if (dialogPrint.ShowDialog() == DialogResult.OK)
            {
                doc.PrintFromPage = dialogPrint.PrinterSettings.FromPage;
                doc.PrintToPage = dialogPrint.PrinterSettings.ToPage;
                doc.PrinterName = dialogPrint.PrinterSettings.PrinterName;
    
                PrintDocument printDoc = doc.PrintDocument;
                dialogPrint.Document = printDoc;
                printDoc.Print();
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-15
      • 1970-01-01
      • 1970-01-01
      • 2012-11-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多