更新时间:2023-01-27 09:40:47
请参阅下面的我的代码".我使用它来复制徽标颜色,以在运行时自动更改网站主题.希望它能起作用!
See my Code below. I use it to copy Logo Color to change the site theme automatically at run-time. Hope it works!
只需将图像URL作为参数传递给函数.
Simply pass the image URL as parameter in the function.
function CopyLogoColor($logo_path){
$i = imagecreatefromjpeg($logo_path);
$rTotal = 0;
$gTotal =0;
$bTotal = 0;
$total = 0;
for ( $x=0 ; $x<imagesx($i) ; $x++){
for ( $y=0 ; $y<imagesy($i) ; $y++ ) {
$rgb = imagecolorat($i,$x,$y);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8)& 0xFF;
$b = $rgb & 0xFF;
$rTotal += $r;
$gTotal += $g;
$bTotal += $b;
$total++;
}
}
$rAverage = round($rTotal/$total);
$gAverage = round($gTotal/$total);
$bAverage = round($bTotal/$total);
$r = intval($rAverage);
$g = intval($gAverage);
$b = intval($bAverage);
$r = dechex($r<0?0:($r>255?255:$r));
$g = dechex($g<0?0:($g>255?255:$g));
$b = dechex($b<0?0:($b>255?255:$b));
$color = (strlen($r) < 2?'0':'').$r;
$color .= (strlen($g) < 2?'0':'').$g;
$color .= (strlen($b) < 2?'0':'').$b;
return '#'.$color;
}