Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP获取图片主色调的方法介绍

PHP获取图片主色调的方法介绍

巴扎黑
巴扎黑asal
2017-08-06 16:08:591988semak imbas

这篇文章主要介绍了PHP编程获取图片的主色调的方法,基于PHP的Imagick扩展实现针对图片的颜色值获取功能,需要的朋友可以参考下

本文实例讲述了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[&#39;r&#39;];
  $g += $val[&#39;g&#39;];
  $b += $val[&#39;b&#39;];
  echo "<p style=&#39;background-color: rgb({$val[&#39;r&#39;]},{$val[&#39;g&#39;]},{$val[&#39;b&#39;]});width:50px;height:50px;float:left;&#39;></p>";
}
$r = round($r/10);
$g = round($g/10);
$b = round($b/10);
echo "<br><p style=&#39;background-color: rgb({$r},{$g},{$b});width:100px;height:100px;float:left;&#39;></p>";
?>

Atas ialah kandungan terperinci PHP获取图片主色调的方法介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn