Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in das Ermitteln der Hauptfarbe eines Bildes in PHP

Einführung in das Ermitteln der Hauptfarbe eines Bildes in PHP

巴扎黑
巴扎黑Original
2017-08-06 16:08:591987Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum Erhalten der Hauptfarbe des Bildes durch PHP-Programmierung vorgestellt. Die auf PHP basierende Imagick-Erweiterung implementiert die Funktion zum Erhalten des Farbwerts des Bildes

Dieser Artikel beschreibt PHP mit Beispielen. Erhalten Sie programmgesteuert die Hauptfarbe eines Bildes. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Im Code wird die Image-Erweiterung von PHP verwendet. Bevor Sie sie verwenden, müssen Sie die Imagick-Erweiterung von PHP installieren wie folgt (unter Windows): Installieren Sie PHP unter Windows7 Tutorial zur Imagick- und Imagemagick-Erweiterung

Der Code lautet wie folgt:


<?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>";
?>

Das obige ist der detaillierte Inhalt vonEinführung in das Ermitteln der Hauptfarbe eines Bildes in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn