PrinterJob printerJob = PrinterJob.getPrinterJob();
if ( printerJob.printDialog() ) {
PDDocument docc = PDDocument.load(tempFile);
// docc.print();
docc.silentPrint(printerJob);
}
Так запускаю печать, печать проходит с данными настройками, но единственное что не понятно - после того как задание передается на принтер, на принтере нужно нажать кнопку OK(-там надпись из версии - загрузить бумагу в лоток 1).
Принтер вроде как с двумя лотками, но основной(как раз первый) загружен бумагой, и при нажатии OK бумага забирается из него. Можно как-то в job'e убрать чтобы не высвечивалось это условие на принтере?
Через
DocPrintJob pj = pservice.createPrintJob();
pj.print(doc, null);
Работает корректно, без подтверждения на принтере. Этот вариант к сожалению не использую, т.к. DocFlavor.BYTE_ARRAY.AUTOSENSE убивает атрибуты печати(кол-во копий, формат печати и т.д.).
Сборка персонального компьютера от Artline: умный выбор для современных пользователей