所以我一直收到这个错误:
错误:java.awt.print.PrinterException:Paper的可成像宽度太小。
我能够根据s.o上的很多问题拼凑一个印刷类。它工作正常。直到它没有。我在休息之前恢复了我的代码,但它仍然不起作用。我已经尝试了很多关于堆栈溢出的答案,纸张的可成像宽度太小。到目前为止一切都没有。
我试图将它发送到什么打印机或什么尺寸的纸张无关紧要。我可以将它打印成PDF,然后打印出我想要的内容。画像1.125“w x 3.5”h。
public void printComponenet(){
PrinterJob pj = PrinterJob.getPrinterJob();
pj.setJobName(" Print Component ");
pj.setPrintable (new Printable() {
public int print(Graphics pg, PageFormat pf, int pageNum){
if (pageNum > 0){
return Printable.NO_SUCH_PAGE;
}
Graphics2D g2 = (Graphics2D) pg;
g2.rotate(Math.toRadians(90));
g2.translate(0,-81);
g2.translate((int)pf.getImageableX(), (int)pf.getImageableY());
jPanelPrintLabel.paint(g2);
return Printable.PAGE_EXISTS;
}
});
if (pj.printDialog() == false)
return;
try {
pj.print();
} catch (PrinterException ex) {
System.out.print(ex);
// handle exception
}
}