procedure Invert(Image:TImage);

var

BMP:TBitmap;

begin

BMP:=TBitmap.Create;

try

Bmp.Width :=Image1.Picture.Bitmap.Width;

Bmp.Height:=Image1.Picture.Bitmap.Height;

Bitblt(Bmp.Canvas.Handle,0,0,Bmp.Width,Bmp.Height,Image.Picture.Bitmap.CanvasHandle,0,0,NoTSRCCCPY);

Image.Picture.Bitmap.Assign(Bmp);

finally

Bmp.Free;

end;

end;