Delphi-Quellcode:
Canvas.Brush.Color := clRed;
Canvas.BrushCopy(Bounds(), Bitmap, Bounds(), clWhite);
zeichnet die Bitmap und ersetzt alle clWhite Pixels durch clRed.
Ansonsten schau dir TImageList ggenauer an, und .Masked, .AddMasked.
Über's
API gibt es MaskBlt().
Gruß Hagen