Ciao a tutti,
tramite il classe book() invio alla stampante 2 fogli, volevo chiedere se esiste un metodo per impostare da java una stampa fronte/retro.
Tipo il setOrientation();
Grazie mille![]()
Ciao a tutti,
tramite il classe book() invio alla stampante 2 fogli, volevo chiedere se esiste un metodo per impostare da java una stampa fronte/retro.
Tipo il setOrientation();
Grazie mille![]()
A naso ti direi di no, perché si tratta di una delle opzioni della stampante, quindi bisognerebbe impostare i settings della stampante.
Ma magari qualcuno ne sa più di me.
Ciao.
I computer sono incredibilmente veloci, accurati e stupidi.
Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
Insieme sono una potenza che supera l'immaginazione.
A.Einstein
Ciao e Grazie per la risposta.
il problema è proprio questo , visto che utilizzo la stampante per altre stampe sempre dallo stesso programma non posso impostare il fronte/retro di default.
l'unica soluzione che ho trovato è quella di aprire ogni volta la printDialog è da li impostare a mano.
A "naso" (e solo guardando il javadoc ... non ho modo di provare su una stampante che faccia il fronte-retro automatico):
codice:HashPrintRequestAttributeSet attrSet = new HashPrintRequestAttributeSet(); attrSet.add(Sides.DUPLEX); if (job.printDialog(attrSet)) { // ..... job.print(); ..... }
(HashPrintRequestAttributeSet è in javax.print.attribute mentre Sides è in javax.print.attribute.standard)
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ultima cosa andbin,
esiste un attributo anche per il cassetto della stampante, perché vengono identificati con i numeri 1, 2 , 3, ...
Grazie mille
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Ciao andbin,
innanzitutto grazie della disponibilità.
per capire di quali vassoi dispongono le stampanti ho creato una funzione che mi da questa stampa :
Lista Stampanti installate : ZDesigner ZM400 300 dpi (ZPL)
Lista Stampanti installate : ZDesigner TLP 2844
Lista Stampanti installate : HP LaserJet Professional P1606dn
Lista Stampanti installate : HP Color LaserJet M651 PCL 6
Lista Stampanti installate : Fax
Lista Stampanti installate : Bullzip PDF Printer
Lista Stampanti installate : Adobe PDF
Stampanti con vassoio Botton : HP LaserJet Professional P1606dn
Stampanti con vassoio MANUAL : ZDesigner ZM400 300 dpi (ZPL)
Stampanti con vassoio MANUAL : ZDesigner TLP 2844
Stampanti con vassoio MANUAL : HP LaserJet Professional P1606dn
Stampanti con vassoio MIDDLE : HP LaserJet Professional P1606dn
Stampanti con vassoio TOP : HP LaserJet Professional P1606dn
Stampanti con vassoio TOP : Fax
utilizzando un
PrintService[] service = PrintServiceLookup.lookupPrintServices(null,attr_s et);
per i vari attributi di MediaTray.
Analizzando, la stampante "HP Color LaserJet M651 PCL 6" che fisicamente ha diversi vassoi non viene elencata.
forse utilizza attributi diversi ?
E' possibile avere informazioni su tutti gli attributi di una stampante in modo da identificare i vassoi ?
spero di essere stato chiaro.
grazie
Prova questo, l'ho scritto e provato "al volo" (lo verificherò meglio appena ho tempo):
codice:import java.util.Arrays; import javax.print.PrintService; import javax.print.PrintServiceLookup; import javax.print.attribute.Attribute; class StampaAttributiStampanti { public static void main(String[] args) { PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null); for (PrintService service : services) { System.out.println(service); Class<?>[] categories = service.getSupportedAttributeCategories(); for (Class<?> category : categories) { Object supportedValues = service.getSupportedAttributeValues((Class<? extends Attribute>) category, null, null); System.out.format(" %s -> %s%n", category.getSimpleName(), // nome semplice, senza package valueDescription(supportedValues)); } } } private static String valueDescription(Object obj) { if (obj instanceof Object[]) { return Arrays.toString((Object[]) obj); } else { return obj.toString(); } } }
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
si blocca sulla seconda stampante:
Win32 Printer : NPI815782 (HP Color LaserJet CP2025n)
JobName -> Java Printing
RequestingUserName -> Corsaro
Copies -> 1-9999
Destination -> file:/C:/Users/Corsaro/workspace/ProveVarie/out.prn
OrientationRequested -> [portrait, landscape, reverse-landscape]
PageRanges -> [1-2147483647]
Media -> [na-letter, na-legal, executive, iso-a3, iso-a4, iso-a5, jis-b4, jis-b5, b, na-number-10-envelope, iso-designated-long, iso-c5, iso-b5, monarch-envelope, oufuko-postcard, 16K, Executive (JIS), 8K, ledger, A4/3, Executive JIS, Form-Source, Selez. automatica stam, Alim. manuale vass. 1, Vassoio 1, Vassoio 2, Vassoio 3, Vassoio 4, Non specificato, Normale, Prestampata, Intestata, Lucido, Perforata, Etichette, Fine, Riciclata, Colorata, Leggera 60-75 g/m2, Pesante 106-163 g/m2, Cartoncino >164 g/m2, Lucida 75-105 g/m2, Lucida pesante, Carta resistente, Busta]
MediaPrintableArea -> [(6.011,4.233)->(203.877,270.933)mm, (4.233,4.233)->(207.433,347.133)mm, (4.233,4.233)->(175.683,258.233)mm, (6.011,4.233)->(284.946,411.522)mm, (4.233,4.995)->(201.507,286.978)mm, (4.233,4.233)->(139.531,201.507)mm, (6.011,4.233)->(244.941,355.515)mm, (4.995,4.233)->(172.0,248.497)mm, (6.35,4.233)->(266.7,423.333)mm, (4.233,4.233)->(96.266,232.833)mm, (4.233,4.233)->(101.515,211.497)mm, (4.233,4.995)->(153.501,218.99)mm, (4.233,4.995)->(167.513,239.988)mm, (4.233,4.233)->(89.916,182.033)mm, (4.233,4.233)->(139.531,191.516)mm, (4.233,4.233)->(188.383,264.583)mm, (4.995,4.233)->(205.952,321.522)mm, (6.35,4.233)->(260.35,385.233)mm, (6.35,4.233)->(266.7,423.333)mm, (4.233,4.233)->(91.525,201.507)mm, (4.995,4.233)->(205.952,321.522)mm]
Fidelity -> [false, true]
SheetCollate -> [collated, uncollated]
SunAlternateMedia -> alternatate-media: iso-a4
Chromaticity -> [monochrome, color]
PrinterResolution -> [60000x60000 dphi]
Win32 Printer : ZDesigner ZM400 300 dpi (ZPL)
JobName -> Java Printing
RequestingUserName -> Corsaro
Copies -> 1-32000
Destination -> file:/C:/Users/Corsaro/workspace/ProveVarie/out.prn
OrientationRequested -> [portrait, landscape, reverse-landscape]
PageRanges -> [1-2147483647]
Media -> [manual]
MediaPrintableArea -> []
Fidelity -> [false, true]
SheetCollate -> [collated, uncollated]
Exception in thread "main" java.lang.NullPointerException