Java PDFRenderer的问题

Java PDFRenderer的问题,java,pdf,printing,dialog,pdfrenderer,Java,Pdf,Printing,Dialog,Pdfrenderer,您是否知道如何使用带有显示对话框窗口的标准Java库打印PDF文件 PrinterJob pjob = PrinterJob.getPrinterJob(); if (pjob.printDialog()) { try {pjob.print();} catch (PrinterException exc) { System.out.println(exc); }

您是否知道如何使用带有显示对话框窗口的标准Java库打印PDF文件

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

我找不到解决办法。我试图使用PDFRenderer,但是,我不知道如何,它只在页面的1/4表面打印我的.pdf。。。如果您能提供帮助,我将不胜感激。

如果PDF不是A4格式,您需要配置一些转换来扩展它


JPS有很多控制打印的选项。

要使用pdfRenderer库,我基本上遵循这个家伙的步骤:

至于为什么打印图像时会缩小比例,这是因为PDFPrintPage是如何实现的。上面我给你看的链接展示了如何绕过这个问题。关于PDFPrintPage的源代码,下面的链接有:


我试图理解PDFPrintPage中的逻辑,并调整图像大小和纸张大小以适应需要,现在我正在使用PDFRender成功打印PDF,问题是PDF是A4。我曾尝试使用其他库,但找不到令人满意的解决方案。您知道如何将PDF文件发送到PrinterJob对象吗?如果您不能使用JPS,您可以始终使用本机打印。我写了一篇关于如何用Java打印PDF文件的文章,如果你能在你的答案中包含一个描述,那会更有帮助。虽然链接文章的内容可能会回答你的问题,但你需要假设链接将来可能会失效。出于这个原因,你应该总是发布链接中的相关部分,并留下它们作为参考以获取更多信息。