2

我正在尝试使用 Java Print Services 自动将打印作业发送到打印机,但它很快就变成了一场噩梦。来到手头的问题,这里是代码:

DocAttributeSet docAset = new HashDocAttributeSet();
                docAset.add(MediaSizeName.NA_LETTER);
                Doc myDoc = new SimpleDoc(book, psInFormat, docAset);
                PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
                aset.add(new JobName("Test Job Name", null));
                aset.add(MediaSizeName.NA_LETTER);
                aset.add(Sides.ONE_SIDED);
                aset.add(Fidelity.FIDELITY_TRUE);

//                new JobState()
                DocPrintJob job = services[8].createPrintJob();
                try {
                    job.print(myDoc, aset);
    //System.out.println(" Thread " + this.getId() + ": Envío de impresión OK");
                } catch (PrintException ex) {
                    Logger.getLogger(PrototypeMain2.class.getName()).log(Level.SEVERE, null, ex);
                }

此代码完全忽略介质尺寸并打印到默认的 A4 尺寸纸张。

非常感谢这里的任何帮助。

4

1 回答 1

0

似乎打印机根据我设置的首选项使用默认纸张,所以如果我将首选项设置为使用字母大小,它会要求使用字母大小的页面,默认情况下它将在 A4 大小的纸张上打印。

于 2013-01-15T08:35:08.837 回答