eXorithm – Execute Algorithm: View / Run Algorithm blend_colors

Logo Beta

function blend_colors ($color1$color2$weight

{

  if ($weight<0 || $weight>1)

    throw new Exception"Weight must be between 0 and 1");

  

  $r1 = hexdecsubstr$color1, 0, 2));

  $g1 = hexdecsubstr$color1, 2, 2));

  $b1 = hexdecsubstr$color1, 4, 2));

  

  $r2 = hexdecsubstr$color2, 0, 2));

  $g2 = hexdecsubstr$color2, 2, 2));

  $b2 = hexdecsubstr$color2, 4, 2));

  

  $r = dechexround$r1$weight + $r2*(1-$weight)));

  $g = dechexround$g1$weight + $g2*(1-$weight)));

  $b = dechexround$b1$weight + $b2*(1-$weight)));

  

  if (strlen$r)==1) $r = '0'$r

  if (strlen$g)==1) $g = '0'$g

  if (strlen$b)==1) $b = '0'$b

  

  return $r$g$b