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

回到顶部