PDFBox: How to print pdf with specified printer?

后端 未结 5 944
余生分开走
余生分开走 2020-12-14 10:32

I want to use PDFBox for printing PDF files created by iText. I have tried this successfully with PDDocument class and its method print(). You can find docu

5条回答
  •  一生所求
    2020-12-14 11:07

    PDDocument doc = PDDocument.load(new FileInputStream(System.getProperty("java.io.tmpdir") + "\\pdf.pdf"));  //read pdf file.
    String printerNameDesired = "VENDOR THERMAL PRINTER";
    
    javax.print.PrintService[] service = PrinterJob.lookupPrintServices(); 
    DocPrintJob docPrintJob = null;
    
    int count = service.length;
    for (int i = 0; i < count; i++) {
        if (service[i].getName().equalsIgnoreCase(printerNameDesired)) {
            docPrintJob = service[i].createPrintJob();
            i = count;
        }
    }
    
    PrinterJob pjob = PrinterJob.getPrinterJob();
    pjob.setPrintService(docPrintJob.getPrintService());
    pjob.setJobName("job");
    doc.silentPrint(pjob);
    

提交回复
热议问题