現在の位置: ホーム> 最新記事一覧> PHPでImageColorAllocateを使用して透明な色を割り当てる方法は?

PHPでImageColorAllocateを使用して透明な色を割り当てる方法は?

gitbox 2025-09-08
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<h1>方法PHPで使用されますimagecolorallocate透明な色を割り当てます?</h1>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<hr>"</span></span><span>;

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<p>使用中PHPのGDライブラリが画像処理を実行するとき,<code>imagecolorallocate()
";エコー

上記のコードは200×200のキャンバスを作成し、純粋な白で満たされています。

エコー

2。透明な色の実装

エコー

画像で透明な色を使用する場合、 ImageColorAllocateを直接実装することはできず、代わりにImageColorallocatealpha()を使用する必要があります。その関数プロトタイプは次のとおりです

エコー
<span class="fun">ImageColorAllocatealpha(Resource \ $ Image、int \ $ red、int \ $ green、int \ $ blue、int \ $ alpha)</span>
;エコー

\ $ alphaの値範囲は0(完全に不透明)から127(完全に透明)です。

;エコー

3。SampleCode

; echo "
\$im = imagecreatetruecolor(200, 200);

// 透明なバックグラウンド保存を有効にします
imagesavealpha(\$im, true);

// 透明な背景色を割り当てます
\$transparent = imagecolorallocatealpha(\$im, 0, 0, 0, 127);
imagefill(\$im, 0, 0, \$transparent);

// 半透明の赤を割り当てます
\$red = imagecolorallocatealpha(\$im, 255, 0, 0, 63);

// 長方形を描きます
imagefilledrectangle(\$im, 50, 50, 150, 150, \$red);

// 出力PNG形式
header('Content-Type: image/png');
imagepng(\$im);
imagedestroy(\$im);
"
;
エコー

このコードは、まず完全に透​​明な背景で満たされた透明チャネルを備えた画像を作成します。次に、キャンバスに描画するために半透明の赤い長方形を割り当てます。PNGをImageAvealpha()によってPNGを保存するときに有効であることを確認してください。

;エコー "

4。summary

"
; echo "
  • ImageColorAllocate()は不透明な色を割り当てるために使用されます。MigmeColorallocatealpha
  • ()は、透明性または半透明の効果を実現するための透明性を指定できます。PNG
  • /GIFを出力するときは、 ImageAvealpha()またはImageColorTransparent()を呼び出すように注意してください。
エコー

ImageColorallocatealpha()を合理的に使用することにより、画像処理で柔軟な透明効果を達成し、視覚的表現を強化できます。