Я каждый. У меня проблема с печатью билета с Java. Я сгенерировал билет с помощью яшмы, а затем мне нужно распечатать его в POS Thermal printer. Я пытаюсь напечатать PDF, и результат получил
Неправильный формат
Затем я конвертирую pdf в png с помощью pdfbox, но изображение слишком маленькое.
Как правильно распечатать? Есть ли способ правильно распечатать PDF для POS Thremal Printer или заполнить и увеличить изображение PNG?
Печать PNG слишком мала
При печати из Adobe Reader непосредственно на мой POS Thermal Printer у меня был правильный билет.
Исправлено из Adobe Reader
Вот часть моего кода:
PDDocument document = PDDocument.load(new File(pathFile+".pdf"));
PDPage pd;
PDFRenderer pdfRenderer = new PDFRenderer(document);
for (int page = 0; page < document.getNumberOfPages(); ++page)
{
pd = document.getPage(page);
BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB);
ImageIOUtil.writeImage(bim, pathFile +".png", 300);
}
document.close();
FileInputStream is = new FileInputStream(pathFile+".png");
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
DocPrintJob job = mPrinter.createPrintJob();
Doc doc = new SimpleDoc(is, flavor, null);
job.print(doc, null);
is.close();