Visualizzazione dei risultati da 1 a 10 su 17

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da fcorsa Visualizza il messaggio
    E' possibile avere informazioni su tutti gli attributi di una stampante in modo da identificare i vassoi ?
    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.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  2. #2
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Prova questo, l'ho scritto e provato "al volo" (lo verificherò meglio appena ho tempo):
    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

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da fcorsa Visualizza il messaggio
    si blocca sulla seconda stampante:

    Exception in thread "main" java.lang.NullPointerException
    In effetti la documentazione di getSupportedAttributeValues dice che può restituire null. Non l'avevo considerato nel valueDescription.

    Semplicemente per sicurezza, correggi da

    return obj.toString();

    a

    return obj != null ? obj.toString() : "---nessun valore---";
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.