在pdfbox 2.0.0及更高版本中,PDDocument.silentprint()的替换是什么?

时间:2017-03-17 15:48:49

标签: pdfbox

我正在转换到pdfbox版本2.0.0,想知道在pdfbox 2.0.0及更高版本中替换PDDocument.silentprint()有什么替换?

1 个答案:

答案 0 :(得分:2)

OP提到的方法PDDocument.silentprint()有效地做了类似

的事情
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new PDPageable(this, job));
job.print();

根据PDFBox 2.0 Migration Guide

  

PDF打印

     

已删除PDFBox 2.0.0 PDFPrinter

     

PDFPrinter.silentPrint()的用户现在应该使用此代码:

PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new PDFPageable(document));
job.print();
     

PDFPrinter.print()的用户现在应该使用此代码:

PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new PDFPageable(document));
if (job.printDialog()) {
    job.print();
}
     

高级用例示例可以在org / apache / pdfbox / examples / printing / Printing.java下的示例包中找到

因此,对于PDDocument document替换1.8.x

document.silentprint();

应为2.0.x

PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new PDFPageable(document));
job.print();