2014-07-24 110 views
0

我必须打印PDF文档,点击打印按钮。另外我需要显示打印对话框,但不应该向用户显示实际的PDF。根据选择的打印对话框属性,PDF应该打印在用户选择的打印机中。打印PDF而不显示它们,但显示打印对话框

要生成的PDF,我可以添加使用下面的代码PrintDialog类属性: -

writer.SetOpenAction(new PdfAction(PdfAction.PRINTDIALOG)); 

但我不能够得到的是选择按钮时打印的PDF格式。你能否给我提供一些实现这一点的指针。

完整代码: - (PDF作为内存流传递到打印按钮视图)。

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; 

} 
+0

'writer.SetOpenAction(new PdfAction(PdfAction.PRINTDIALOG))'行是PDF渲染器的_hint_或_suggestion_,您希望打开时显示打印对话框。这个提示的实现是可选的。 iTextSharp与打印无关,因为它不是渲染器。所以第一个问题是,您使用的是哪种PDF渲染器? PDF标准中没有关于“不显示PDF”的内容,它必须针对您使用的任何渲染器。 –

回答

相关问题