Blending 2 colours

, \t\t , How to blend 2 TColor's together with a specified strength (Opacity).,,function BlendColors(Color1, Color2: TColor; Opacity: Byte): TColor;,, var,, I : Integer;,, Val1,,, Val2 : Byte;,, RGB1,,, RGB2 : PByteArray;,, begin,, //First make sure they are RGB rather than a windows colour,, Color1 := ColorToRGB(Color1);,, Color2 := ColorToRGB(Color2);,,, //Point our Byte arrays to the 2 colours,, RGB1 := @Color1;,, RGB2 := @Color2;,,, //Blend the B,G,R,, for I:=0 to 2 do,, begin,, Val1 := RGB1[I] * (255 - Opacity) div 255;,, Val2 := RGB2[I] * Opacity div 255;,, RGB1[I] := Val1 + Val2; ,,,,,,,,, //den farve flag at specificere $01 = faktiske rgb farve, rgb1 [3]: = 1;,, resultat: = color1,,,,,



Previous:
Next Page: