本文实例讲述了php编程获取图片的主色调的方法。分享给大家供大家参考,具体如下:
代码中用到了php的图片扩展,所以使用之前,需要先安装php的imagick扩展,具体安装如下(window下): windows7下安装php的imagick和imagemagick扩展教程
代码如下:
<?php $average = new imagick("./fruit/143511081321676_593.jpg"); $average->quantizeimage( 10, imagick::colorspace_rgb, 0, false, false ); $average->uniqueimagecolors(); function getimagescolor( imagick $im ){ $colorarr = array(); $it = $im->getpixeliterator(); $it->resetiterator(); while( $row = $it->getnextiteratorrow() ){ foreach ( $row as $pixel ){ $colorarr[] = $pixel->getcolor(); } } return $colorarr; } $colorarr = getimagescolor($average); foreach($colorarr as $val){ $r += $val['r']; $g += $val['g']; $b += $val['b']; echo "<p style='background-color: rgb({$val['r']},{$val['g']},{$val['b']});width:50px;height:50px;float:left;'></p>"; } $r = round($r/10); $g = round($g/10); $b = round($b/10); echo "<br><p style='background-color: rgb({$r},{$g},{$b});width:100px;height:100px;float:left;'></p>"; ?>
以上就是php获取图片主色调的方法介绍的详细内容。
