Hallo liebe Community,
ich hab ein kleines Problem mit dem Canvas auf Images. Ich berechne die Breite der Linie, bzw. wie oft die Linie nebeneinander dargestellt werden soll (in einer for Schleife) so:
breite:=round((Bild.Picture.Bitmap.Width*Bild.Picture.Bitmap.Height)*2*0.0000001);
Das wird dann so gezeichnet:
Sekrechte Linien
Delphi-Quellcode:
for i:=(<Ein bestimmter Wert>) to ((<Ein bestimmter Wert>)+breite) do
begin
Bild.Picture.Bitmap.Canvas.MoveTo(i,0);
Bild.Picture.Bitmap.Canvas.LineTo(i,Bild.Picture.Bitmap.Height);
end;
Waagerechte Linien
Delphi-Quellcode:
for i:=(<Ein bestimmter Wert>) to ((<Ein bestimmter Wert>)+breite) do
begin
Bild.Picture.Bitmap.Canvas.MoveTo(0,i);
Bild.Picture.Bitmap.Canvas.LineTo(Bild.Picture.Bitmap.Width,i);
end;
Das Resultat ist im Anhang!
Jetzt habe ich versucht zu der Breite eine bestimmte Zahl zu addieren (z.B. 5) dann sieht es so aus, wie in dem 2. Bild im Anhang!
Wo liegt der Fehler?
Liebe Grüße
loirad
PS.: lasst euch nicht von dem roten Quadrat irritieren, das ist für dieses Problem unwichtig!
Edit: Vielleicht sollte ich noch erwähnen, dass alle 4 Linien mit der gleichen Breite aufgerufen wurden!