您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php如何识别图片的主颜色

2025/8/3 1:35:13发布31次查看
php 手册中有如下说明: imagecolorat (php 4, php 5) imagecolorat get the index of the color of a pixel ?php $im = imagecreatefrompng ( php.png ); $rgb = imagecolorat ( $im , 10 , 15 ); $r = ( $rgb 16 ) 0xff ; $g = ( $rgb 8 ) 0xff ; $b = $rg
php 手册中有如下说明:
imagecolorat
(php 4, php 5)
imagecolorat — get the index of the color of a pixel
>  16 ) &  0xff ;
$g  = ( $rgb  >>  8 ) &  0xff ;
$b  =  $rgb  &  0xff ;
var_dump ( $r ,  $g ,  $b );
?>
于是可以写一个专门的处理函数:
function getimagemaincolor($strurl) {
    $imageinfo = getimagesize($strurl);
    //图片类型
    $imgtype = strtolower(substr(image_type_to_extension($imageinfo[2]), 1));
    //对应函数
    $imagefun = ‘imagecreatefrom’ . ($imgtype == ‘jpg’ ? ‘jpeg’ : $imgtype);
    $i = $imagefun($strurl);
    //循环色值
    $rcolornum=$gcolornum=$bcolornum=$total=0;
    for ($x=0;$x        for ($y=0;$y            $rgb = imagecolorat($i,$x,$y);
            //三通道
            $r = ($rgb >> 16) & 0xff;
            $g = ($rgb >> & 0xff;
            $b = $rgb & 0xff;
            $rcolornum += $r;
            $gcolornum += $g;
            $bcolornum += $b;
            $total++;
        }
    }
    $rgb = array();
    $rgb['r'] = round($rcolornum/$total);
    $rgb['g'] = round($gcolornum/$total);
    $rgb['b'] = round($bcolornum/$total);
    return $rgb;
 }
原文地址:php如何识别图片的主颜色, 感谢原作者分享。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product