Ausgangssituation Bitmap1 und Bitmap2 sind gleich groß und enthalten die Ausgangsbilder.
ResultBitmap ist von gleicher Größe (Width und Height) und soll das Differenzbild aufnehmen.
Delphi-Quellcode:
{1.Bitmap in das Ergebnisbild kopieren}
ResultBitmap.Canvas.CopyMode := cmScrCopy;
ResultBitmap.Canvas.CopyRect(
ResultBitmap.Canvas.ClipRect,
Bitmap1.Canvas,
Bitmap1.Canvas.ClipRect);
{2.Bitmap mit dem Ergebnisbild XOR verknüpfen}
ResultBitmap.Canvas.CopyMode := cmSrcInvert;
ResultBitmap.Canvas.CopyRect(
ResultBitmap.Canvas.ClipRect,
Bitmap2.Canvas,
Bitmap2.Canvas.ClipRect);
{Normalzustand}
ResultBitmap.Canvas.CopyMode := cmScrCopy;
Im Ergebnisbild sind jetzt alle die Punkte nicht Schwarz, die in den beiden Ausgangsbildern voneinander abweichen.