Flip Horizontal
Procedura odbija bitmapę względem osi Y
procedure FlipHorizontal(var Bitmap:TBitmap); type ByteTriple =array[0..2] of byte ; // musimy czytać po 3 bajty żeby nie zamienić kolejności BGR na RGB var ByteL,ByteR:^ByteTriple; ByteTemp:ByteTriple; H,V:Integer; begin Bitmap.PixelFormat:=pf24bit; for V:=0 to (Bitmap.Height -1 ) do begin ByteL:=Bitmap.ScanLine[V]; ByteR:=Bitmap.ScanLine[V]; inc(ByteR,Bitmap.Width -1); for H:=0 to (Bitmap.Width -1) div 2 do begin ByteTemp:=ByteL^; ByteL^:=ByteR^; ByteR^:=ByteTemp; Inc(ByteL); Dec(ByteR); end; end; end;