Print API: Auslesen der Papiergröße

klarkimming

Mitglied
Hallo zusammen,

Gibt es eine Möglichkeit die in einem Drucker eingestellte Papiergröße auszulesen?

Habe bereits mehrere Stunden ohne Erfolg mit Suchen verbracht.

Es müßte vermutlich irgendwie über den PrintService gehen, wenn überhaupt...

vielen Dank für eure Arbeit im voraus.
 
sowas?
Java:
PrinterJob pj = PrinterJob.getPrinterJob();
PageFormat format = pj.defaultPage();
System.out.println(format.getWidth()/72*2.54 + " : " + format.getHeight()/72*2.54);
 
Das ist mir schon klar ;-) hier ging es ja um die Papiergröße und nicht um einen Monitor.
Mir ist zwar nicht klar, ob es das ist was der TO sucht, aber sowohl Paper als auch PageFormat liefern die Werte mit einem entsprechenden Faktor:
API Doku (PageFormat/Paper hat gesagt.:
double getHeight()
Returns the height of the page in 1/72nds of an inch.
 
Hallo zusammen,

vielen Dank für die Antworten. Die Möglichkeit mit PrinterJob und dann defaultPage hatte ich gestern auch schon gesehen. Allerdings hatte ich die defaultPage vor dem Setzen eines PrintService abgerufen, wodurch natürlich immer der falsche Wert zurückgeben wurde.... Manchmal hat man halt keinen guten Tag....

Der funktionierende Code (verkürzt um unwichtige Elemente) für andere mit dem selben Problem.

Java:
PrinterJob printerJob = PrinterJob.getPrinterJob();
printerJob.setPrintService(Hier den PrintService übergeben);
PageFormat pageFormat = printerJob.defaultPage();
Paper paper = pageFormat.getPaper();
double paperWidth = paper.getWidth();
 

Zurück
Oben