
Originariamente inviata da
fcorsa
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();
}
}
}