Teste das:
Delphi-Quellcode:
function ColorMix(Col1, Col2: TColor; PercCol1: Byte): TColor;
var
R, G, B: Integer;
begin
if PercCol1 > 100
then PercCol1 := 100;
Col1 := ColorToRGB(Col1);
Col2 := ColorToRGB(Col2);
R := Round(GetRValue(Col1) + ((GetRValue(Col2) - GetRValue(Col1)) * PercCol1 / 100));
G := Round(GetGValue(Col1) + ((GetGValue(Col2) - GetGValue(Col1)) * PercCol1 / 100));
B := Round(GetBValue(Col1) + ((GetBValue(Col2) - GetBValue(Col1)) * PercCol1 / 100));
Result :=
RGB(R, G, B);
end;
Ich hab beide mit ColorToRGB konvertiert.