2013-05-16 101 views
0

您有任何想法如何使用標準Java庫打印PDF文件並顯示對話窗口?PDFRenderer出現問題

PrinterJob pjob = PrinterJob.getPrinterJob(); 
     if (pjob.printDialog()) { 
      try {pjob.print();} 
      catch (PrinterException exc) { 
       System.out.println(exc); 
      } 
     } 

我有找到解決的問題。正在嘗試使用PDFRenderer,但是,我不知道如何,它只是在頁面的1/4表面上打印我的.pdf ...如果可以提供幫助,我將不勝感激。

回答

0

如果PDF不是A4,則需要配置一些轉換來對其進行縮放。

JPS有很多選項來控制打印。

+0

問題是PDF是A4。我試圖使用其他庫,但無法找到令人滿意的解決方案。你有什麼想法如何發送PDF文件到PrinterJob對象? – user2391915

+0

如果您不能使用JPS,則始終可以使用本機打印。我在http://blog.idrsolutions.com/2010/01/printing-pdf-files-from-java/ –

1

要使用pdfRenderer庫我基本上遵循這個傢伙步驟:

http://lynema.org/2010/12/29/printing-a-pdf-in-java-with-pdfrenderer

至於爲什麼當您打印圖像時關閉縮放這是因爲PDFPrintPage是如何實現的。上面給出的鏈接顯示瞭如何解決這個問題。至於PDFPrintPage源代碼下面的鏈接有它:

http://juixe.com/techknow/index.php/2008/01/17/print-a-pdf-document-in-java/

我試着去理解在PDFPrintPage邏輯和我處理我的圖像大小和紙張大小,以適應現在我成功地打印PDF使用PDFRenderer

+0

上寫了一篇關於如何在Java中打印PDF文件的文章。如果您可以在你的答案。 –

+0

雖然鏈接文章的內容可能會回答OP問題,但您需要假設鏈接將來可能會失效。因此,您應該始終從鏈接發佈相關部分,並將其留作參考以獲取更多信息。 – Pshemo