2014-07-24 109 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」的內容,它必須針對您使用的任何渲染器。 –

回答

相關問題