Инверсия цветов
Материал из DRKB
function InvertBitmap(Bmp: TBitmap): TBitmap;
var
x, y: integer;
ByteArray: PByteArray;
begin
Bmp.PixelFormat := pf24Bit;
for y := 0 to Bmp.Height - 1 do
begin
ByteArray := Bmp.ScanLine[y];
for x := 0 to Bmp.Width * 3 - 1 do
begin
ByteArray[x] := 255 - ByteArray[x];
end;
end;
Result := Bmp;
end;
ПРИМЕР ИСПОЛЬЗОВАНИЯ:
procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Picture.Bitmap := InvertBitmap(Image1.Picture.Bitmap);
end;
Author: Song
Source: http://forum.sources.ru
ID: 03712