ديگه خيلي توضيح نمي دم. با ديدن سورس برنامه خودتون همه رو متوجه ميشيد.
دستوراتي كه در اين برنامه از آنها استفاده مي شود:
getrvalueوgetgvalueوgetbvalueوrgb
ابزارها:
tbitmapوopenpicturedialogوimage
سورس تابع:
***********************
function navigate(pixel:tcolor):tcolor;
var
r,g,b:byte;
begin
r:=getrvalue(pixel);
r:=255-r;
g:=getgvalue(pixel);
g:=255-g;
b:=getbvalue(pixel);
b:=255-b;
result:=rgb(r,g,b);
end;
سورس برنامه:
**********************
procedure TForm1.Button1Click(Sender: TObject);
var
bmp:tbitmap;
fname:string;
x,y:integer;
begin
if openpicturedialog1.Execute then
fname:=openpicturedialog1.FileName
else
exit;
bmp:=tbitmap.Create;
bmp.LoadFromFile(fname);
for x:=0 to bmp.Width-1 do
for y:=0 to bmp.Height do
bmp.Canvas.Pixels[x,y]:=navigate(bmp.Canvas.Pixels[x,y]);
image1.Picture.Bitmap:=bmp;
image1.Repaint;
bmp.Free;
end;