ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
433
433
EMPFEHLEN
-
05.03.10 11:22 #1
- Registriert seit
- Sep 2008
- Beiträge
- 78
Hallo,
ich habe eine Druckfunktion mit einem Druckdialog print.Dialog() erstellt.
Das funktioniert alles super.
Aber, wenn der Anwender auf die Idee kommt im Druckdialog die Seitenränder zu ändern, funktioniert das manchmal nicht korrekt.
Probleme macht der obere Seitenrand.
Beispiel 1:
Der Anwender ändert nur jeweils einen Seitenrand.
Ergebnis:
Oben -> funktioniert nicht
Links -> funktioniert
Unten -> funktioniert
Rechts -> funktioniert
Beispiel 2:
Der Anwender ändert den oberen und einen beliebigen Seitenrand.
Ergebnis:
Oben und Links -> funktioniert nicht, nur der linke Rand wird verschoben
Oben und Unten -> funktioniert
Oben und Rechts -> funktioniert
Ist das ein Fehler von Java?
Wie kann ich diesen Fehler umgehen bzw. abfangen?
Ich habe zum schnellen Ausprobieren ein kleines Testprogramm geschrieben.
(Die Druckausgabe einfach in einen PDF-Maker umleiten und anschauen).
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.SystemColor; import java.awt.print.PageFormat; import java.awt.print.Printable; import java.awt.print.PrinterException; import java.awt.print.PrinterJob; import javax.print.attribute.HashPrintRequestAttributeSet; import javax.print.attribute.PrintRequestAttributeSet; import javax.print.attribute.standard.Chromaticity; import javax.print.attribute.standard.MediaPrintableArea; import javax.print.attribute.standard.MediaSizeName; import javax.print.attribute.standard.OrientationRequested; import javax.print.attribute.standard.PrintQuality; public class MainProg implements Printable { PrinterJob Druckjob; PrintRequestAttributeSet aset; public static void main(String[] args) { MainProg x = new MainProg(); x.Drucken(); } public void Drucken() { Druckjob = PrinterJob.getPrinterJob(); aset = new HashPrintRequestAttributeSet(); Druckjob.setPrintable(this); aset.add(MediaSizeName.ISO_A4); aset.add(new MediaPrintableArea(20, 20, 170, 257, MediaPrintableArea.MM)); aset.add(OrientationRequested.PORTRAIT); aset.add(PrintQuality.NORMAL); aset.add(Chromaticity.MONOCHROME); boolean ok = Druckjob.printDialog(aset); if(ok) { try { Druckjob.print(aset); } catch(Exception ex) { ex.printStackTrace(); } } } public int print(Graphics g, PageFormat pageFormat, int pageIndex) throws PrinterException { System.out.println(pageIndex); System.out.println("Im print."); if(pageIndex > 0) { System.out.println("Mehr als 1 Seiten"); return this.NO_SUCH_PAGE; } System.out.println("Drucke"); Font font = new Font("Times", Font.PLAIN, 20); Graphics2D g2d = (Graphics2D)g; g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); g2d.setFont(font); g2d.setColor(SystemColor.yellow); g2d.fillRect(0, 0, (int)pageFormat.getWidth(), (int)pageFormat.getHeight()); g2d.setPaintMode(); g2d.setColor(SystemColor.black); g2d.drawString("TEST", 50, 50); return this.PAGE_EXISTS; } }
MfG
hansmueller
-
04.08.10 10:00 #2
- Registriert seit
- Sep 2008
- Beiträge
- 78
Das Problem besteht immer noch.
Hat irgend jemand dazu eine Idee oder Meinung?
MfG
hansmueller
-
30.08.10 11:52 #3
- Registriert seit
- Sep 2008
- Beiträge
- 78
Hat wirklich niemand dazu eine Idee oder Meinung?
MfG
hansmueller
-
16.09.10 13:19 #4
- Registriert seit
- Sep 2008
- Beiträge
- 78
Laßt mich bitte an eurer Unwissenheit teilhaben.

MfG
hansmueller
Ähnliche Themen
-
Freehand: Seitenrand beim Ausdrucken
Von konsumi im Forum Vektor-ProgrammeAntworten: 1Letzter Beitrag: 27.08.05, 18:54 -
Problem: "Seite kann nicht angezeigt werden..." beim Browser-Zurück-Button
Von ultratom im Forum PHPAntworten: 26Letzter Beitrag: 22.05.05, 19:25 -
Wie kann ich verhindern dass beim includen css styles übernommen werden?
Von dasraz im Forum PHPAntworten: 4Letzter Beitrag: 15.01.05, 18:38 -
Kann JAVA Programm nicht complieren-javac konnte nicht gefunden werden!
Von chell im Forum JavaAntworten: 1Letzter Beitrag: 07.11.04, 17:35 -
Kann nicht drucken (MAC OS 9.2.2). Auswahl funktioniert aber
Von meckie im Forum Mac OSAntworten: 0Letzter Beitrag: 07.08.03, 08:20





Zitieren
Login




