Hi,
There is a base color (for example, green). I need to get 2 colors out of it. -
-
on 20% lighter
-
on 20% darker
How can I do this ?
Hi,
There is a base color (for example, green). I need to get 2 colors out of it. -
on 20% lighter
on 20% darker
How can I do this ?
PROCEDURE Main()
LOCAL aBaseColor := { 0, 128, 0 } // green
LOCAL aLighter, aDarker
aLighter := AdjustColor( aBaseColor[1], aBaseColor[2], aBaseColor[3], 0.2 )
aDarker := AdjustColor( aBaseColor[1], aBaseColor[2], aBaseColor[3], -0.2 )
? "Base Color: ", aBaseColor
? "20% Lighter: ", aLighter
? "20% Darker: ", aDarker
RETURN
FUNCTION AdjustColor( nRed, nGreen, nBlue, nFactor )
LOCAL nNewRed, nNewGreen, nNewBlue
nNewRed := Min( 255, Max( 0, nRed + Int( nRed * nFactor ) ) )
nNewGreen := Min( 255, Max( 0, nGreen + Int( nGreen * nFactor ) ) )
nNewBlue := Min( 255, Max( 0, nBlue * ( 1 + nFactor ) ) )
RETURN { nNewRed, nNewGreen, nNewBlue }Thanks more!