浮雕效果

来源:互联网 发布:电子商务数据分析报告 编辑:程序博客网 时间:2024/04/27 15:47

procedure Effect_Emboss(Picture:TBitmap);

var

BB1,BB2:TBitmap;

begin

BB1:=TBitmap.Create;

BB1.PixelFormat :=pf24bit;

BB1.Assign(Picture.Bitmap);

BB2:=TBitmap.Create;

BB2.PixelFormat:=pf24bit;

BB2.Assign(BB1);

Emboss(BB2);

Picture.Bitmap.Assigned(BB2);

BB1.Free;

BB2.Free;

end;

procedure Emboss(var Bmp:TBitmap);

var

x,y:integer;

p1,p2:PByteArray;

begin

for y:=0 to Bmp.Height-2 do

begin

p1:=bmp.Scanline[y];

p2:=bmp.Scanline[y+1];

for x:=0 to Bmp.Width-4 do

begin

p1[x*3]:=(p1[x*3]+(p2[(x+3)*3] xor $FF)) shr 1;

p1[x*3+1]:=(p1[x*3+1]+(p2[(x+3)*3+1] xor $FF)) shr 1;

p1[x*3+2]:=(p1[x*3+2]+(p2[(x+3)*3+2] xor $FF)) shr 1;

end;

end;

end;

原创粉丝点击