Zum Inhalt springen

Eigenschaften des printDialogs ausgeben


Waldo

Empfohlene Beiträge

Ich hab nochmal ne kleine Frage:

Wie kann ich die Eigenschaften des printDialoges ausgeben, also, wenn man zB auf

Eigenschaften -> DIN A3 einstellt, dann soll das Blatt auch in DIN A3 Format gedruckt werden. Wird irgeneine Eigenschaft zurückgegeben, nac der abgefragt werden kann? Welche Methode gibt diese Eigenschaft zurück?

Vielen Dank für die Hilfe.

Waldo

Link zu diesem Kommentar
Auf anderen Seiten teilen

void doPrint()

{

PrinterJob printJob = PrinterJob.getPrinterJob();

PageFormat pageFormat = new PageFormat();

Paper ppr = pageFormat.getPaper();

if (allTracks)

pageFormat.setOrientation(PageFormat.LANDSCAPE);

else

pageFormat.setOrientation(PageFormat.PORTRAIT);

printJob.setPrintable(this, pageFormat);

if (printJob.printDialog()) {

try {

printJob.getPrintService();

// Hier kommen bei Änderung des PrintDialoges immer identische Werte heraus

System.out.println("Höhe "+ppr.getHeight());

System.out.println("Tiefe "+ppr.getWidth());

System.out.println("ImageHeigth "+ppr.getImageableHeight());

System.out.println("ImageWidth "+ppr.getImageableWidth());

System.out.println("ImageX "+ppr.getImageableX());

System.out.println("ImageY "+ppr.getImageableY());

printJob.print();

} catch (Exception PrintException) {

PrintException.printStackTrace();

}

}

}

public int print (Graphics g, PageFormat pageFormat, int page)

{

if (page == 0) {

buildupGraphics((Graphics2D)g, (int)pageFormat.getImageableX(), (int)pageFormat.getImageableY(),

(int)pageFormat.getImageableWidth(), (int)pageFormat.getImageableHeight());

return (PAGE_EXISTS);

}

else

return (NO_SUCH_PAGE);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also so wie ich das sehe nimmst du die Maße vom Paper!*grins*

Nimm mal die Maße vom PageFormat. Das Paper bleibt doch immer gleich. Nur das PageFormat ändert sich.

Schau doch mal, änderst du irgendwas an deinem Paper-Object? :rolleyes:

Du änderst doch nur dein PageFormat. Davon kannst du dir ein neues Paper-Object geben lassen (welches auch die veränderten Eigenschaften enthält)!

Peet

------------------------------------------------------------------

Original geschrieben von Waldo

void doPrint()

{

PrinterJob printJob = PrinterJob.getPrinterJob();

PageFormat pageFormat = new PageFormat();

Paper ppr = pageFormat.getPaper();

if (allTracks)

pageFormat.setOrientation(PageFormat.LANDSCAPE);

else

pageFormat.setOrientation(PageFormat.PORTRAIT);

printJob.setPrintable(this, pageFormat);

if (printJob.printDialog()) {

try {

printJob.getPrintService();

// Hier kommen bei Änderung des PrintDialoges immer identische Werte heraus

System.out.println("Höhe "+ppr.getHeight());

System.out.println("Tiefe "+ppr.getWidth());

System.out.println("ImageHeigth "+ppr.getImageableHeight());

System.out.println("ImageWidth "+ppr.getImageableWidth());

System.out.println("ImageX "+ppr.getImageableX());

System.out.println("ImageY "+ppr.getImageableY());

printJob.print();

} catch (Exception PrintException) {

PrintException.printStackTrace();

}

}

}

public int print (Graphics g, PageFormat pageFormat, int page)

{

if (page == 0) {

buildupGraphics((Graphics2D)g, (int)pageFormat.getImageableX(), (int)pageFormat.getImageableY(),

(int)pageFormat.getImageableWidth(), (int)pageFormat.getImageableHeight());

return (PAGE_EXISTS);

}

else

return (NO_SUCH_PAGE);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Leider funktioniert das so auch nicht und die Werte sind immernoch identisch

void doPrint()

{

PrinterJob printJob = PrinterJob.getPrinterJob();

PageFormat pageFormat = new PageFormat();

Paper ppr = pageFormat.getPaper();

if (allTracks)

pageFormat.setOrientation(PageFormat.LANDSCAPE);

else

pageFormat.setOrientation(PageFormat.PORTRAIT);

printJob.setPrintable(this, pageFormat);

if (printJob.printDialog()) {

try {

printJob.getPrintService();

System.out.println("Höhe "+pageFormat.getHeight());

System.out.println("Tiefe "+pageFormat.getWidt());

System.out.println("ImageHeigth "+pageFormat.getImageableHeight());

System.out.println("ImageWidth "+pageFormat.getImageableWidth());

System.out.println("ImageX "+pageFormat.getImageableX());

System.out.println("ImageY "+pageFormat.getImageableY());

printJob.print();

} catch (Exception PrintException) {

PrintException.printStackTrace();

}

}

}

public int print (Graphics g, PageFormat pageFormat, int page)

{

if (page == 0) {

buildupGraphics((Graphics2D)g, (int)pageFormat.getImageableX(), (int)pageFormat.getImageableY(),

(int)pageFormat.getImageableWidth(), (int)pageFormat.getImageableHeight());

return (PAGE_EXISTS);

}

else

return (NO_SUCH_PAGE);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Morbid_Soul

mmhhh, kannst du über den PageDialog was erreichen?

Bei mir finde ich in den Dialogen nicht mal die Möglichkeit, das Format A 3 einzustellen.

Das kommt auf den Drucker drauf an, ob der A3 unterstützt. Wenn er das nicht unterstützt kannst du A3 auch nicht auswählen.:D

Peet

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...