Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.619 Beiträge
Delphi 12 Athens
|
Re: 2 TImages mit einander vergleichen
4. Jul 2007, 22:38
Hab da schnell mal was geschrieben.
Delphi-Quellcode:
function GleicheBilder(gr1,gr2: TGraphic): Boolean;
var i, j: integer;
P1,P2: PByteArray;
bm1,bm2: TBitmap;
begin
Result := false;
bm1 := TBitmap.Create;
bm2 := TBitmap.Create;
try
bm1.Assign(gr1);
bm2.Assign(gr2);
if (bm1.Height <> bm2.Height) or (bm1.Width <> bm2.Width) then exit;
for i := 0 to bm1.Height - 1 do
begin
P1 := bm1.ScanLine[i];
P2 := bm2.ScanLine[i];
for j := 0 to bm1.Width - 1 do
if P1^[j] <> P2^[j] then exit;
end;
Result := true;
finally
FreeAndNil(bm1);
FreeAndNil(bm2);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if GleicheBilder(Image1.Picture.Graphic,Image2.Picture.Graphic) then
showmessage('Gleich')
else
ShowMessage('Nicht gleich');
end;
Detlef "Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
|