您的位置:首页 > 其它

利用TBDBitmapData对象查找两张图片上的不同

2010-09-14 13:29 447 查看
利用TBDBitmapData对象查找两张图片上的不同,从右上角开始利用双层循环遍历两图上的所有象素点,并相互比较。不完整代码如下:

procedure TForm1.Button5Click(Sender: TObject);
var
Bmp1,Bmp2 : TBDBitmapData;
Left,Top : Integer;
IsExit : Boolean;
begin
Bmp1:=TBDBitmapData.Create;
Bmp2:=TBDBitmapData.Create;

Bmp1.LoadFromFile('文件名1');
Bmp2.LoadFromFile('文件名2');

//假设两张图片一样大

IsExit:=false;
for Top:=0 to Bmp1.Height-1 do
begin
for Left:=0 to Bmp1.Width-1 do
begin
if Bmp1[Left,Top]<>Bmp2[Left,Top] then
begin
//在(Left,Top)位置两张图片有不同

//相应的处理...

if {如果不继续查找其它不同} then
begin
IsExit:=true; //用以退出循环
break;
end;
end;
end;
if IsExit then break;
end;

Bmp1.Free;
Bmp2.Free;
end;

以上代码不完整,可以根据需要进行修改,TBDBitmapData的其它详细使用方法可以参考:Delphi下实现全屏快速找图找色
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐