Hallo,
Ich möchte Paketscheine drucken:
-die Paketscheine haben ziemlich annähernd DinA6 Format
-die Paketscheine sind wie Endlospapier verbunden, allerdings sind die "breiten" Seiten verbunden und nicht die schmalen wie normalerweise bei Endlospapier
-die Paketscheine müssen mit einem Nadeldrucker gedruckt werden wegen den Durchschlägen
Problem:
Der Drucker kann standardmäßig nur A4, A5, B5, Letter, Legal, Endlospapier A4
Der Versuch die Papiergröße manuell zu setzen mit
scheitert, da das Papierformat nachträglich auf "Legal" (oder wars "Letter"?) gesetzt wird.
Scheinbar wird das vom Drucker unterstüzte Format gewählt das am ehesten zum angegebenen Format passt...
=> das ist aber nicht gewollt, es muss genau das von mir angegebene Format sein
Das Ergebnis ist das am Ende des Druckvorgangs das Papier noch einige Zentimeter "durchgeschoben" wird, sodass die Seite insgesamt ca. 15cm durchgeschoben wurde, da ein Paketschein nur 10,5cm lang ist wurde der nächste Paketschein schon zur Hälfte eingezogen und ich kann nicht weiter drucken sondern muss das zuerst korrigieren
=> inaktzeptabel da viel zu Zeitaufwändig
Wenn ich aber z.B. in OpenOffice die Seitengröße auf 15x10,5cm stelle spoolt der Drucken am Ende nur soweit das insgesamt genau 10,5cm gespoolt wurden
=> so könnte man beliebig viele Paketscheine nacheinander drucken
Es ist also prinzipiell möglich so zu drucken wie es für meinen Zweck nötig ist, die Frage ist aber:
Wie löse ich das mit Java?
Bin schon seit 2 Tagen dran, aber komme einfach nicht weiter...
mfg
Christian
Ich möchte Paketscheine drucken:
-die Paketscheine haben ziemlich annähernd DinA6 Format
-die Paketscheine sind wie Endlospapier verbunden, allerdings sind die "breiten" Seiten verbunden und nicht die schmalen wie normalerweise bei Endlospapier
-die Paketscheine müssen mit einem Nadeldrucker gedruckt werden wegen den Durchschlägen
Problem:
Der Drucker kann standardmäßig nur A4, A5, B5, Letter, Legal, Endlospapier A4
Der Versuch die Papiergröße manuell zu setzen mit
Code:
PrinterJob printJob = PrinterJob.getPrinterJob();
Paper paper = new Paper();
paper.setSize(446.0,288.0); // ca.157x105mm
paper.setImageableArea(10.0,10.0,180.0,180.0);
PageFormat pf = new PageFormat();
pf.setPaper(paper);
printJob.setPrintable(this,pf);
if (printJob.printDialog()){
try {
printJob.print();
} catch(PrinterException pe){
System.out.println("Error printing: " + pe);
}
Scheinbar wird das vom Drucker unterstüzte Format gewählt das am ehesten zum angegebenen Format passt...
=> das ist aber nicht gewollt, es muss genau das von mir angegebene Format sein
Das Ergebnis ist das am Ende des Druckvorgangs das Papier noch einige Zentimeter "durchgeschoben" wird, sodass die Seite insgesamt ca. 15cm durchgeschoben wurde, da ein Paketschein nur 10,5cm lang ist wurde der nächste Paketschein schon zur Hälfte eingezogen und ich kann nicht weiter drucken sondern muss das zuerst korrigieren
=> inaktzeptabel da viel zu Zeitaufwändig
Wenn ich aber z.B. in OpenOffice die Seitengröße auf 15x10,5cm stelle spoolt der Drucken am Ende nur soweit das insgesamt genau 10,5cm gespoolt wurden
=> so könnte man beliebig viele Paketscheine nacheinander drucken
Es ist also prinzipiell möglich so zu drucken wie es für meinen Zweck nötig ist, die Frage ist aber:
Wie löse ich das mit Java?
Bin schon seit 2 Tagen dran, aber komme einfach nicht weiter...
mfg
Christian