我正在为我的公司开发POS应用程序,我必须打印到收据打印机。打印机型号爱普生热敏打印纸宽80毫米。 我的java热敏打印机代码无法打印长收据(超过A4纸张尺寸)。它的工作正常,但如果在pdf文件中纸张尺寸大于A4,则生成半打印。我的代码未提及
PrinterJob job = PrinterJob.getPrinterJob();
PDDocument document = null;
try {
document = PDDocument.load(temp);
for (int i=0;i<document.getNumberOfPages();i++) {
PDDocument doc = new PDDocument();
doc.addPage(document.getPage(i));
job.setPageable(new PDFPageable(doc));
job.print();
doc.close();
}
document.close();
Obs:temp是PDF格式的临时文件。 我尝试定义页面但不起作用
Paper paper = new Paper();
paper.setSize(paper.getWidth(), paper.getHeight());
我也尝试定义MediaPrintableArea但不起作用,因为重置适合A4的文本不会重置纸张大小。
感谢任何可以提供帮助的人