Zunächst müssen Sie das GIF -Bild mit der ImagecreateFromgif () -Funktion laden. Diese Funktion gibt eine Bildressource zurück.
<span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">'example.gif'</span></span><span>;
</span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatefromgif</span></span><span>(</span><span><span class="hljs-variable">$filename</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$image</span></span><span>) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">'Nicht laden können GIF Bild'</span></span><span>);
}
</span></span>
Rufen Sie als Nächstes die Funktion "ImageColorstotal" an und geben Sie die gerade geladene Bildressource über, um die Gesamtzahl der Farben zu erhalten.
<span><span><span class="hljs-variable">$colorCount</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorstotal</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span></span>
Sie können die Farbmenge direkt ausgeben und das Ergebnis bestätigen.
<span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Bild中使用的颜色总数是: "</span></span><span> . </span><span><span class="hljs-variable">$colorCount</span></span><span>;
</span></span>
Nachdem Sie die Bildressource verwendet haben, ist es am besten, sie zu zerstören und den Speicher freizugeben.
<span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span></span>
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">'example.gif'</span></span><span>;
</span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatefromgif</span></span><span>(</span><span><span class="hljs-variable">$filename</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$image</span></span><span>) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">'Nicht laden können GIF Bild'</span></span><span>);
}
</span><span><span class="hljs-variable">$colorCount</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorstotal</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Bild中使用的颜色总数是: "</span></span><span> . </span><span><span class="hljs-variable">$colorCount</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Stellen Sie sicher, dass in Ihrer PHP -Umgebung die GD -Bibliothek aktiviert ist, andernfalls werden die zugehörigen Funktionen nicht verwendet.
ImageColorStotal ist nur für Palettenbilder geeignet, und das von echte Farbbilder zurückgegebene Ergebnis beträgt normalerweise 0.
GIF -Bilder können bis zu 256 Farben verwenden, sodass der maximale Rückgabewert 256 nicht überschreitet.