Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
Delphi 8 Professional
|
Re: zeilenweise drucken
18. Sep 2005, 17:16
Gut, Printerindex muß das sein, um den Drucker anzuzeigen. Aber man sehe sich mal den Anhang an, der mit folgendem Source erzeugt wurde :
Delphi-Quellcode:
procedure TForm1.FormActivate(Sender: TObject);
begin
Listbox1.Items := printer.printers;
if PrintDialog1.Execute then begin
printer.BeginDoc;
printer.Canvas.Font.Size := 6;
showmessage(printer.printers[printer.printerindex]);
printer.Canvas.TextOut(1,1,'12345678901234567890123456789012345678901234567890');
printer.Canvas.TextOut(1,31,'Zeile 2');
printer.Canvas.TextOut(1,61,'Zeile 3');
printer.Canvas.TextOut(1,91,'Zeile 4');
printer.Canvas.Font.Size := 8;
printer.Canvas.TextOut(1,100,'12345678901234567890123456789012345678901234567890');
printer.Canvas.TextOut(1,131,'Zeile 2');
printer.Canvas.TextOut(1,161,'Zeile 3');
printer.Canvas.TextOut(1,191,'Zeile 4');
printer.Canvas.Font.Size := 10;
printer.Canvas.TextOut(1,200,'12345678901234567890123456789012345678901234567890');
printer.Canvas.TextOut(1,231,'Zeile 2');
printer.Canvas.TextOut(1,261,'Zeile 3');
printer.Canvas.TextOut(1,291,'Zeile 4');
printer.Canvas.Font.Size := 12;
printer.Canvas.TextOut(1,300,'12345678901234567890123456789012345678901234567890');
printer.Canvas.TextOut(1,331,'Zeile 2');
printer.Canvas.TextOut(1,361,'Zeile 3');
printer.Canvas.TextOut(1,391,'Zeile 4');
printer.EndDoc;
end;
end;
Unter Windows sieht die Sache ganz anders aus, als unter DOS. Die Festlegung auf Zeichen/Zeile gilt da nicht. Das Ziel ist nun, eine Druckbreite von 48 Zeichen/Zeile zu erreichen (wegen anderer Drucker notwendig). Allerdings sieht man, daß die Zeilenhöhe alles vermasselt, sofern sie in Abhängigkeit von der Druckbreite gesetzt wird. Wegen diverser Drucker will ich nun allerdings auch nicht jeden Drucker einzeln anpassen. Was ich brauche ist einfach zeilenweise zu drucken mit max. 48 Zeichen. Da es sich um Endlosdrucker handelt spielen auch die Seiten keine Rolle. Die gibts nicht !
Gruß
Hansa
|