PDFBox:如何使用指定的打印机打印pdf?
- 由iText创建的
- 。我已经使用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);
}
回答:
PDDocument
除无参数外,还提供其他打印方法print()
:
public void print(PrinterJob printJob) throws PrinterException;public void silentPrint() throws PrinterException;
public void silentPrint(PrinterJob printJob) throws PrinterException;
这些silentPrint
方法不显示对话框。
您可以通过首先选择打印机,然后silentPrint
使用相应PrinterJob
初始化的实例进行调用来获得所需的内容。
以上是 PDFBox:如何使用指定的打印机打印pdf? 的全部内容, 来源链接: utcz.com/qa/404872.html