PDFBox:如何使用指定的打印机打印PDF?
我想使用PDFBox打印由iText创建的PDF文件。我已经成功地尝试了PDDocument类及其方法print()。您可以在此处找到文档:http://pdfbox.apache.org/apidocs/。
(我正在使用这个代码:)
public static void printPDF(String fileName)
throws IOException, PrinterException {
PDDocument doc = PDDocument.load(fileName);
doc.print();
}
方法print()工作得很好,但有一个问题:当我需要打印多个文件时,该方法要求我为每个文档选择打印机。
有没有办法只设置一次打印机?
对于打印机选择,我可以使用此代码,例如:
public static PrintService choosePrinter() {
PrinterJob printJob = PrinterJob.getPrinterJob();
if(printJob.printDialog()) {
return printJob.getPrintService();
}
else {
return null;
}
}
提前致谢
溶液:
public static PrintService choosePrinter() {
PrinterJob printJob = PrinterJob.getPrinterJob();
if(printJob.printDialog()) {
return printJob.getPrintService();
}
else {
return null;
}
}
public static void printPDF(String fileName, PrintService printer)
throws IOException, PrinterException {
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintService(printer);
PDDocument doc = PDDocument.load(fileName);
doc.silentPrint(job);
}