Position actuelle: Accueil> Derniers articles> Comment utiliser la fonction ImageColOrStotal pour obtenir le nombre total de couleurs dans une image GIF? Quelles sont les étapes détaillées?

Comment utiliser la fonction ImageColOrStotal pour obtenir le nombre total de couleurs dans une image GIF? Quelles sont les étapes détaillées?

M66 2025-07-26

Étapes détaillées

1. Chargement des images GIF

Tout d'abord, vous devez charger l'image GIF avec la fonction ImageCreateFromGif () . Cette fonction renvoie une ressource d'image.

 <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">'Impossible de charger GIF image'</span></span><span>);
}
</span></span>

2. Utilisez ImageColOrStotal pour obtenir le nombre de couleurs

Ensuite, appelez la fonction ImageColOrStotal et passez dans la ressource d'image qui vient de charger pour obtenir le nombre total de couleurs.

 <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>

3. Couleur de sortie totale

Vous pouvez sortir directement la quantité de couleur et confirmer le résultat.

 <span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"image中使用的颜色总数是: "</span></span><span> . </span><span><span class="hljs-variable">$colorCount</span></span><span>;
</span></span>

4. Ressources de libération (facultative)

Après avoir utilisé la ressource d'image, il est préférable de le détruire et de libérer de la mémoire.

 <span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span></span>

Exemple de code complet

 <span><span><span class="hljs-meta">&lt;?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">'Impossible de charger GIF image'</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">"image中使用的颜色总数是: "</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">?&gt;</span></span><span>
</span></span>

Choses à noter

  • Assurez-vous que votre environnement PHP a la bibliothèque GD activée, sinon les fonctions associées ne seront pas utilisées.

  • ImageColOrStotal ne convient qu'aux images de palette, et le résultat renvoyé par de vraies images en couleur est généralement 0.

  • Les images GIF peuvent utiliser jusqu'à 256 couleurs, de sorte que la valeur de retour maximale ne dépassera pas 256.