Hallo Leute,
ich habe ein relativ großes Bitmap welches ich auf einem Drucker ausplotten (drucken) möchte. Die Größe des Bitmaps ist variabel. Ich habe nun das Bitmap auf die vom User eingestellete Blattgröße gestretcht indem ich diese Routine verwende:
Code:
Printer.BeginDoc;
With Printer.Canvas Do
Begin
StretchDraw(Printer.Canvas.ClipRect, bmpMyPrinter);
Verti := GetDeviceCaps(Printer.Handle, HORZRES);
Hori := GetDeviceCaps(Printer.Handle, VERTRES);
FaktorH := Hori / bmpMyPrinter.Height;
FaktorV := Verti / bmpMyPrinter.Width;
End;
Printer.Enddoc;
Das funktioniert ganz gut, nur ist das Problem folgendes: Wenn der User eine unpassende Blattgröße in den Druckereinstellungen einstellt, dann sieht der Ausdruck etwas bescheiden aus (ungleichförmig zertstretcht).
Wie würdet ihr das Problem lösen? Würdet ihr das evtl ganz anders machen? Wenn ja wie? Ein Beispiel wäre super.