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 对txt文件的操作

Delphi 10.4.1的编译器bug终于修正了!

Delphi中判断是否是64位操作系统

Delphi idhttp使用代理ip

Delphi dbgrids 组件内实现查询

Delphi sysutils.lastdelimiter - 判断一个字符串在另一个字符串中最后出现的位置

Delphi 获取百度注册页面验证码图片的源代码

Delphi 有关debughook

Delphi 10.3.1 android沉浸式透明状态栏

Delphi 控制台读写

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



打赏

取消

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

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

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

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

评论

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