0
如何将“java.awt.print.Printable”对象静默地打印到PDF?
几点需要注意:无声打印“可打印”对象到PDF文件
- 我没有数据作为PDF文件
- 我工作的现有的代码,所以我不能从打印接口
那么一步之遥我可以使用job.printDialog()打印它。但我需要能够静静地做到这一点(无需用户输入)。可用的PDF打印机是“Adobe PDF”,我想其他人可以根据需要安装。
这里的基本代码:
Printable printout = /*object*/;
Book pageable = new Book();
pageable.append(printout, pageFormat);
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PAGEABLE;
PrintRequestAttributeSet patts = new HashPrintRequestAttributeSet();
// Add Filepath?
PrintService[] ps = PrintServiceLookup.lookupPrintServices(flavor, patts);
if (ps.length == 0)
throw new IllegalStateException("No Printer found");
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintService(ps[0]);
job.setPrintable(printout);