【问题标题】:Java printing with multiple queues with different options具有不同选项的多个队列的 Java 打印
【发布时间】:2016-08-03 10:54:10
【问题描述】:

我有三个打印机队列连接到同一台打印机:

a,无设置标准(颜色) b、黑白 c、黑白+装订

在 Windows 中设置。当打印到 a、b 或 c 中的任何一个时,结果总是相同的,即不使用队列中设置的设置。发送到队列 c 的作业是彩色的,并且没有装订。通过 windows 打印对话框打印,结果如预期,装订和 bw。代码sn-p:

        printServiceAttributeSet.add(new PrinterName("c", null));
        PrintService[] service = null;
        try{
            service = PrintServiceLookup.lookupPrintServices(null, printServiceAttributeSet);
        }catch(Exception e){
            e.printStackTrace();
        }
        DocPrintJob job = service[0].createPrintJob();
        PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
        pras.add(new Copies(1));
        job.print(doc, pras);

Found this old question with the same problem but no Java solution.

在这种情况下出了什么问题?我看到文档通过打印机队列 a、b、c,但与使用队列时通过标准打印对话框相比,它们最终都没有设置。

【问题讨论】:

    标签: java printing java-print


    【解决方案1】:

    要装订页面,您需要设置相应的 PrintRequestAttribute

    pras.add(Finishings.STAPLE);
    

    要以黑白方式打印页面,您需要设置相应的 PrintRequestAttribute

    pras.add(Chromaticity.MONOCHROME)
    

    希望对你有帮助

    【讨论】:

    • 是的,我确实看到了这些选项,但我发现 Java VM 不遵守已在各个打印机队列上设置的设置很奇怪。这真的是我需要的。对于要使用的那些选项。如果可能的话,它将使最终用户的应用程序更易于维护。为什么还能以这种方式设置队列。感谢您的快速输入!
    • 所以我和你一起回答,看看我是否真的可以让它在打印机上工作,但结果相同。我添加了 Finishings.STAPLE 和 Chromaticity.MONOCHROME。没有例外或任何东西,仍然是彩色文件......奇怪......
    猜你喜欢
    • 2016-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多