ich denke ich habe einen teil verstanden.
der code sieht nun so aus:
Delphi-Quellcode:
Printer.BeginDoc;
SetMapMode(Printer.Canvas.Handle, MM_ANISOTROPIC);
SetWindowExtEx(Printer.Canvas.Handle,
GetDeviceCaps(Canvas.Handle, LOGPIXELSX),
GetDeviceCaps(Canvas.Handle, LOGPIXELSY),
Nil);
SetViewportExtEx(Printer.Canvas.Handle,
GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSX),
GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSY),
Nil);
Form1.PaintTo(Printer.Canvas.Handle, 0, 0);
Printer.EndDoc;
Das sieht nicht schlecht aus aber ich bekomme nur den letzten teil des formulars gedruckt. Aber ich denke es sollte etwa 3 seiten zum drucken geben bis der ganze inhalt drauf ist. Wie komme ich nun auf die Restlichen druckinfos? ich sollte doch irgendwo angeben können wie gross das canvas und wieviele seiten es sein sollen die geduckt werden sollen.