public static String printer(String filePath, String printerName)
throws InvalidPasswordException, IOException, PrinterException {
String flag = "Error";
PDDocument document = PDDocument.load(new File(filePath));
for (int p = 0; p < document.getNumberOfPages(); ++p)
{
PDRectangle mediaBox = document.getPage(p).getMediaBox();
mediaBox.transform(Matrix.getScaleInstance(0.5f, 0.5f));
document.getPage(p).setMediaBox(mediaBox);
}
PrintService myPrintService = findPrintService(printerName);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new PDFPageable(document));
job.setPrintService(myPrintService);
job.print();
System.out.println("printed!!");
flag = "Success";
job = null;
myPrintService = null;
document.close();
return flag;
}
I tried to print out local pdf files to printer. But I need to press a button "Ok" directly in printer.
I think problem is page size. So I need to set the size as A4 and then print right away.
Anyone can help me?