<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// このコードは、記事の内容とは何の関係もありません,プレースホルダーのみ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"この記事の開始前の無関係なコンテンツの例。\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
<h1>imagecolorclosesthwb 関数の返品 -</span><span><span class="hljs-number">1</span></span><span> それはどういう意味ですか?この結果の一般的な原因は何ですか??</h1>
<p>存在する PHP 真ん中,<code>imagecolorclosesthwb
指定されたRGB色に最も近いパレットの色インデックスを返します。通常、非陰性整数が返され、色インデックスを表します。しかし、関数が-1を返すと、これは適切な色インデックスが見つからなかったことを意味します。
-1を返すと、関数の実行が失敗し、入力色に一致する色が指定された画像パレットには見つかりませんでした。これは通常、次の状況で発生します。
<?php
</span><span><span class="hljs-comment">// パレット画像を作成します</span></span><span>
</span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>(</span><span><span class="hljs-number">100</span></span><span>, </span><span><span class="hljs-number">100</span></span><span>);
</span><span><span class="hljs-comment">// いくつかの色を割り当てます</span></span><span>
</span><span><span class="hljs-variable">$red</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>);
</span><span><span class="hljs-variable">$green</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>);
</span><span><span class="hljs-comment">// 最も近い色を見つけてみてください</span></span><span>
</span><span><span class="hljs-variable">$index</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorclosesthwb</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">254</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$index</span></span><span> === -</span><span><span class="hljs-number">1</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"一致する色は見つかりません,関数の返品 -1。\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"見つかったカラーインデックスはです: <span class="hljs-subst">$index</span></span></span><span>\n";
}
?>
ImageColorCloseSthWBが-1を返す場合、適切な色のインデックスが見つからないことを意味します。最も一般的な理由は、画像がパレット画像ではないか、画像リソースが無効であることです。このような問題は通常、画像タイプ、入力パラメーター範囲、および環境バージョンを確認することにより回避されます。