2016-08-03 37 views
0

我有三個打印機隊列會到同一臺打印機的多個隊列:Java的印刷用不同的選項

一個,沒有標準設置(顏色) B,黑色和白色 C,黑色和白色+裝訂的

在Windows中設置爲

。當打印到a,b或c中的任何一個時,結果總是相同,並且沒有使用隊列上設置的設置。發送到隊列c的作業顏色鮮豔,沒有主食。通過Windows打印對話框打印結果如預期般,裝訂和bw。 Codesnippet:

 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查看文檔,但與使用隊列時通過標準打印對話框相比,它們最終都沒有設置。

回答

0

裝訂您的網頁,需要設置相應的PrintRequestAttribute

pras.add(Finishings.STAPLE); 

對於打印網頁中黑色&白色則需要設置相應的PrintRequestAttribute

pras.add(Chromaticity.MONOCHROME) 

希望這有助於

+0

是的,我確實看到了這些選項,但我發現Java VM不遵守已在個別打印機機器上設置的設置非常奇怪EUES。這真的是我需要的。用於這些選項。如果可能的話,這將使應用程序對於最終用戶更加可維護。爲什麼還要能夠以這種方式設置隊列。感謝您的快速輸入! – pokemonnogo

+0

所以我和你一起回答,看看我是否真的可以在打印機上工作,但結果相同。我添加了Finishings.STAPLE和Chromaticity.MONOCHROME。沒有例外或任何東西,仍然是彩色文件...怪異... – pokemonnogo