Verstehe mein Druckproblem nicht

Status
Nicht offen für weitere Antworten.

VipViper2000

Aktives Mitglied
Moin!

Ich hab ein Problem: Ich will 2 Bilder drucken, klappt auch ABER: Trotz aller getesteten Einstellungen hab ich IMMER oben und links einen Rand von genau 1 Zoll ( 2,54 cm ). Ich weiss aber nicht warum, hier mal mein Code:

Code:
// Randeinstellungen berücksichtigen
		Paper papier = new Paper();
		papier.setSize(595.0,841.0);
		papier.setImageableArea(1.0,1.0,539.0,732.0);
		pf.setPaper(papier);
		System.out.println("Height: " +pf.getHeight());
		System.out.println("Width: " +pf.getWidth());
		System.out.println("ImageableX: " +pf.getImageableX());
		System.out.println("ImageableY: " +pf.getImageableY());
		pg.translate((int) pf.getImageableX(), (int) pf.getImageableY());
		
		// Front Cover zeichnen
		pg.drawRect(10,10,346,346);
		
		// Back Cover zeichnen
		pg.drawRect(10,370,425,334);

Ich kann mit den Werten spielen wie ich will - links und oben fehlt einfach der Teil. Das ins Front- und Back-Cover, die in CD-Hüllen passen. Die gedruckte Größe stimmt exakt und wenn ich ein fertiges Cover auf das gedruckte lege, habe ich auch meinen berechneten Rand.

Kann mir jemand sagen, was hier nicht stimmt??

Gruß,
VipViper2000
 
Gibste das pageformat an printerjob ?
Code:
PrinterJob pj = PrinterJob.getPrinterJob();
pj.setPrintable(myPrintable, pf);
 
Öhhm nee. Also ich rufe die setPrintable nur mit

Code:
pj.setPrintable(coverPrintable)

auf - dabei ist CoverPrintable die Klasse, die das Printable Interface implementiert. Und in dieser Klasse steht der obige Code. Muss ich das PageFormat ( also den obigen Code ) vorher schreiben ( also ein PageFormat Objekt mit meinen Wünschen kreieren ) und dieses Objekt dann mitgeben??

Ich dachte, ich veränder einfach das PageFormat Objekt...


EDIT: So, ich hab jetzt einfach mal das eingestelle PageFormat Objekt übergeben -> geht wunderbar !!! Vielen Dank dir!!

Gruß,
VipViper2000 :toll: :applaus:
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben