So nach lagem hin und her und herrumprobieren, habe ich eine lösung gefunden mit der ich zwar nicht ganz zufrieden bin.
Ich habe mein halbes Programm umgestrickt damit es klappt, ich rechne jetzt überall immer selbst die 1/10 mm in Pixel um.
D.h. ich erstelle mein Bitmap mit 18x12,5cm was 4252x2953 Pixeln entspricht. Und zeichne ich eine Linie so sähe das wie folgt aus.
Delphi-Quellcode:
with Bitmap.Canvas do begin
LineTo(fMmToPx(0, 600), fMmToPx(10, 600));
MoveTo(fMmToPx(100, 600), fMmToPx(10, 600));
end;
Die funktion fMmToPx():
Delphi-Quellcode:
function fMmToPx(mm, DPI: Integer) : Integer;
begin
result := Round(((mm / 100) * DPI) / 2.54);
end;
So das ganze klappt jetzt auch soweit, jedoch ist die Grafik noch sehr pixelig, bzw. linien sind nachher je nach Zoom im PDF Reader
nicht sichtbar. Lasse ich das PDF wie früher über einen PDF Drucker erstellen, kommen die linien stärker durch und auch die Texte
sind nicht mehr pixelig.
Ich habe gelesen das ein Bitmap wenn es einem Report übergeben wird als JPEG umgewandelt wird, läßt sich da irgendwas beeinflussen
in Ritung AntiAliasing !?
Oder gibt es irgendwie direkt eine möglichkeit auf einem Report zur Laufzeit zu zeichnen?