C# 打印PDF而不显示它们,但显示打印对话框

C# 打印PDF而不显示它们,但显示打印对话框,c#,pdf,printing,itextsharp,C#,Pdf,Printing,Itextsharp,点击打印按钮,我必须打印一份pdf文档。我还需要显示打印对话框,但不应该向用户显示实际的pdf。根据所选的打印对话框属性,pdf应该在用户选择的打印机中打印 在生成的pdf中,我可以使用以下代码添加printdialog属性:- writer.SetOpenAction(new PdfAction(PdfAction.PRINTDIALOG)); 但我无法在选择按钮时打印pdf。你能为我提供一些实现这一目标的建议吗 完整代码:-PDF作为memorystream传递到打印按钮视图 usin

点击打印按钮,我必须打印一份pdf文档。我还需要显示打印对话框,但不应该向用户显示实际的pdf。根据所选的打印对话框属性,pdf应该在用户选择的打印机中打印

在生成的pdf中,我可以使用以下代码添加printdialog属性:-

  writer.SetOpenAction(new PdfAction(PdfAction.PRINTDIALOG));
但我无法在选择按钮时打印pdf。你能为我提供一些实现这一目标的建议吗

完整代码:-PDF作为memorystream传递到打印按钮视图

using (MemoryStream m1 = new MemoryStream())
{
    // MemoryStream m1 = new MemoryStream();
    Int32 i = 0;
    PdfWriter writer = PdfWriter.GetInstance(document, m1);
    document.Open();
    PdfContentByte content = writer.DirectContent;

    document.NewPage();

    PdfImportedPage page = writer.GetImportedPage(reader, i + 1);
    content.AddTemplate(page, 0, 0);
    writer.SetOpenAction(new PdfAction(PdfAction.PRINTDIALOG));
    document.Close();

    return m1;

}
您可以使用打印pdf文件

若你们需要一个.NET的Ghostscript包装器,你们可以看看这个库

通过Ghostscript.NET打印示例可在以下位置找到:

打印对话框是一个常见的对话框,您可以在此处找到有关如何从.NET显示打印对话框的更多信息:

line writer.SetOpenActionnew PD派系PD派系.PRINTDIALOG是对PDF呈现程序的提示或建议,您希望在打开时显示打印对话框。此提示的实现是可选的。iTextSharp实际上与打印无关,因为它不是渲染器。所以第一个问题是,您使用的是什么PDF渲染器?PDF标准中没有关于不显示PDF的规定,这必须特定于您使用的任何渲染器。