您有任何想法如何在显示对话框窗口的情况下使用标准Java库打印PDF文件吗?
PrinterJob pjob = PrinterJob.getPrinterJob();
if (pjob.printDialog()) {
try {pjob.print();}
catch (PrinterException exc) {
System.out.println(exc);
}
}
我在寻找解决方案时遇到了问题。试图使用PDFRenderer,但是,我不知道如何,它仅将我的.pdf打印在页面的1/4面上...如果您能提供帮助,我将不胜感激。
最佳答案
要使用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中的逻辑,并操纵图像尺寸和纸张尺寸以适合我,现在我已使用PDFRenderer成功打印PDF