Delphi 比较图片是否相同


本文整理自网络,侵删。

 function IsBmpSame(bmp1,bmp2: TBitmap): Boolean; 
var
i,j: Integer;
ScanLine1,ScanLine2: PByteArray;
Count: Integer;
begin
Result := (bmp1.Height = bmp2.Height) and
(bmp1.Width = bmp2.Width) and
(bmp1.PixelFormat = bmp2.PixelFormat);
if Result then
begin
i := Integer(bmp1.PixelFormat);
if i < 4 then
i := 4
else if i = 4 then
inc(i);
Count := (i - 3) * bmp1.Width - 1;
for i:=0 to bmp1.Height-1 do
begin
ScanLine1 := bmp1.ScanLine[i];
ScanLine2 := bmp2.ScanLine[i];
for j := 0 to Count do
if ScanLine1[j] <> ScanLine2[j] then
begin
Result := False;
Exit;
end;
end;
end;
end;

相关阅读 >>

Delphi 遍历所有edit控件

Delphi取得桌面工作区域的大小

Delphi 自动填表代码

Delphi 得到cxgrid筛选后的记录数

system单元一些有用的变量或者常数

Delphi 不重启不注销不关explorer刷新注册表

Delphi 操作系统时间与web标准时间校正

汇编基础寄存器

Delphi 关闭android安卓程序

Delphi xe 获取硬盘id序列号

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...