ホームページ  >  記事  >  バックエンド開発  >  PHPで画像のメインカラーを取得する方法の紹介

PHPで画像のメインカラーを取得する方法の紹介

巴扎黑
巴扎黑オリジナル
2017-08-06 16:08:591987ブラウズ

この記事では、PHP プログラミングを通じて画像のメインカラーを取得する方法を主に紹介します。PHP ベースの Imagick 拡張機能は、画像のカラー値を取得する機能を実装しています。この例は、画像のカラー値を取得する機能です。この記事では、PHP プログラミングで画像のメインカラーを取得するメソッドを説明しています。参考のために皆さんと共有してください。詳細は次のとおりです。

コード内で php のイメージ拡張機能が使用されているため、使用する前に、PHP の Imagick 拡張機能をインストールする必要があります。 具体的なインストール方法は次のとおりです (Windows 上)。 ): 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>";
?>

以上がPHPで画像のメインカラーを取得する方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。