Drucker voreingestelltes Papierformat auslesen

JavaRentner

Mitglied
Guten Tag
gibt es eine Möglichkeit das voreingestellte Papierformat auszulesen?
Java:
PrintService[] MetaPrinter = PrintServiceLookup.lookupPrintServices(null, null);
if(service.getName().equals(valPrinter)) {
    Class<?>[] allAtributs = service.getSupportedAttributeCategories();
    for(Class<?> c: allAtrib) {
        System.out.println(c.getTypeName());
    }
}
Wirft folgende Ausgabe:
javax.print.attribute.standard.Copies
javax.print.attribute.standard.Finishings
javax.print.attribute.standard.JobSheets
javax.print.attribute.standard.Media
javax.print.attribute.standard.NumberUp
javax.print.attribute.standard.OrientationRequested
javax.print.attribute.standard.PageRanges
javax.print.attribute.standard.Sides
javax.print.attribute.standard.MediaPrintableArea
javax.print.attribute.standard.Destination
javax.print.attribute.standard.SheetCollate
javax.print.attribute.standard.Chromaticity
javax.print.attribute.standard.DialogOwner
javax.print.attribute.standard.DialogTypeSelection
Habe jetzt in mühseliger kleinarbeit jedes c.getTypeName() durchsucht aber nirgends eine Information zu MediaSizeName gefunden!

Mit folgendem Code kann ich alle MediaTray eines Druckers auslesen:
Code:
ArrayList<String> temp = new ArrayList<>();
AttributeSet aset = new HashAttributeSet();
aset.add(new PrinterName(printerName, null));
PrintService[] services = PrintServiceLookup.lookupPrintServices(null, aset);
for (int i = 0; i < services.length; i++) {
    PrintService service = services[i];
    DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PAGEABLE;
    Object o = service.getSupportedAttributeValues(Media.class, flavor, null);

    if (o != null && o.getClass().isArray()) {
        for (Media media : (Media[]) o) {
            if (media instanceof MediaTray) {
                temp.add(media.toString());
            }
        }
    }
    if(temp.size() <= 0) {
        temp.add("Auto");
    }
}
aber auch hier finde ich nirgends eine Information zu: MediaSizeName

Gibt es denn gar keine Möglichkeit, dass man das voreingestellte Papierformat pro Tray auslesen kann?
 

Ähnliche Java Themen

Neue Themen


Oben