Vielleicht ist die Schleife einfach komplett falsch (P wird falsch gesetzt und falsch erhöht => Copy&Paste Fehler)
...
Das sollte
imho funktionieren (ungestestet)
Tausend Dank!
War also doch ein Denkfehler, weil P zeilenweise erhöht werden muss. Der (ungetestete) Code spiegelt das Ganze - sieht lustig aus und merke ich mir vor, falls ich es mal brauche! Aber wenn man dann noch den Zeilen-Zähler anpasst, passt es perfekt.
Delphi-Quellcode:
rdUpturn : Begin
P:=Memory; // reset pointer
For J:=0 To Pred(H) Do
Begin
rowOut:=Bitmap.ScanLine[J];
For I:=Pred(W) Downto 0 Do
Begin
rowOut[I]:=p^.rgb;
Inc(P);
End;
End;
End;