【发布时间】:2012-07-13 09:52:13
【问题描述】:
如何在 java 中进行双面打印!?
这是我的代码,但它不起作用 - 它只适用于 microsoft word(因此打印机可以做到)
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(new Copies(2));
pras.add(Sides.DUPLEX);
PrinterJob pj = PrinterJob.getPrinterJob();
PageFormat pf = pj.defaultPage();
Paper temp = pf.getPaper();
temp.setImageableArea(1, 3, temp.getWidth(), temp.getHeight());
pf.setPaper(temp);
if (pj.printDialog(pras)) {
try {
pj.setPrintable(this, pf);
pj.print(pras); // Drucken
return true;
} catch (Exception PrintException) {
.....
}
我试图只给出要打印的属性,只给对话框等等等等。 它打印文件 2 次,但不是双面打印! (也试过 Sides.TWO_SIDED_LONG_EDGE..)
【问题讨论】:
-
stackoverflow.com/questions/5775740/…的回答对你有帮助吗?
-
不是真的..因为我用图形而不是文档打印它 - 我也尝试将属性集(如代码)提供给打印方法或/和 printDialog...即使我自己在 printDialog 上设置它也不会打印双面:/
-
无赖,我唯一的另一个建议是搜索您正在使用的打印机型号,看看 Java 与它的交互是否有什么奇怪的地方。
-
我建议您查看以下内容以更彻底地处理该问题:Printing with Attributes(Tray Control, Duplex, etc...) using javax.print library