(26 фев 2015, 18:31) (
1/
0)
[
1]
function grad($text,$from='',$to='')
{
$to = hexdec($to[0].$to[1]).','.hexdec($to[2].$to[3]).','.hexdec($to[4].$to[5]);
$from= hexdec($from[0].$from[1]).','.hexdec($from[2].$from[3]).','.hexdec($from[4].$from[5]);
$levels=strlen($text);
$from = explode(',', $from);
$to = explode(',', $to);
$output = '';
for ($i=1;$i<=$levels;$i++)
{
for ($ii=0;$ii<3;$ii++)
{
$tmp[$ii] = $from[$ii] - $to[$ii];
$tmp[$ii] = floor($tmp[$ii] / $levels);
$rgb[$ii] = $from[$ii] - ($tmp[$ii] * $i);
if ($rgb[$ii] > 255) $rgb[$ii] = 255;
$rgb[$ii] = dechex($rgb[$ii]);
$rgb[$ii] = strtoupper($rgb[$ii]);
if (strlen($rgb[$ii]) < 2) $rgb[$ii] = '0'.$rgb[$ii];
}
$output .= '<font color=\'#'.$rgb[0].$rgb[1].$rgb[2].'\'>'.$text[$i-1].'</font>';
}
return $output;
}
echo grad('Градик','ff0000','000000');