So wie du mit Scan
line arbeitest, erzwingst du das gleiche Verfahren wie mit Pixels.
Dreh deine
for
Schleifen um
Delphi-Quellcode:
for y := ...
for x := ...
dann arbeitest du dich auch Zeile für Zeile durch
wo liegt jetzt mein Fehler ?
Hier wird doch Zeile für Zeile gelesen - ist dennoch langsamer als über Pixel[].
Sollte aber nicht sein, nachdem, was man überall findet.
Delphi-Quellcode:
for y := 0 to yHeight-1 do begin
l_ptr:=bmp.ScanLine[y];
for x := 0 to xwidth-1 do begin
l_r:= l_ptr.rgbBlue;
l_ptr.rgbBlue:=l_ptr.rgbRed;
l_ptr.rgbRed:=l_r;
texdata[((yHeight-1)-y)*xwidth+x] := l_ptr^;
inc(l_ptr);
end;
end;