現在の位置: ホーム> 最新記事一覧> ImageColorStotal関数を使用して、GIF画像の色の総数を取得するにはどうすればよいですか?詳細な手順は何ですか?

ImageColorStotal関数を使用して、GIF画像の色の総数を取得するにはどうすればよいですか?詳細な手順は何ですか?

M66 2025-07-26

詳細な手順

1。GIF画像の読み込み

まず、GIF画像をImageCreateFromGIF()関数でロードする必要があります。この関数は画像リソースを返します。

 <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">'ロードできません GIF 写真'</span></span><span>);
}
</span></span>

2。画像を使用して、色の数を取得します

次に、 ImageColorStotal関数を呼び出して、総数を搭載するためにロードされた画像リソースを渡します。

 <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。合計出力色

色の量を直接出力して、結果を確認できます。

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

4。リリースリソース(オプション)

画像リソースを使用した後、それを破壊してメモリを解放することが最善です。

 <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">&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">'ロードできません GIF 写真'</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">"写真中使用的颜色总数是: "</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>

注意すべきこと

  • PHP環境にGDライブラリが有効になっていることを確認してください。そうしないと、関連する機能が使用されません。

  • ImageColorStotalはパレット画像にのみ適しており、実際の色の画像によって返される結果は通常0です。

  • GIF画像は最大256色を使用できるため、最大リターン値は256を超えません。