{{set:override,subtitle,PHP : アルファブレンディングフラグを設定し、
libgd にバンドルされているレイヤ効果を使用する}}
imagelayereffect
(PHP 4 >= 4.3.0, PHP 5)
imagelayereffect — アルファブレンディングフラグを設定し、 libgd にバンドルされているレイヤ効果を使用する
説明
bool imagelayereffect
( resource
$image
, int $effect
)アルファブレンディングフラグを設定し、 libgd にバンドルされているレイヤ効果を使用します。
パラメータ
-
image -
imagecreatetruecolor() のような画像作成関数が返す画像リソース。
-
effect -
以下の定数のいずれか。
-
IMG_EFFECT_REPLACE -
ピクセルの置換を使用します
( imagealphablending() に
TRUEを渡すのと同じです)。 -
IMG_EFFECT_ALPHABLEND -
通常のピクセルブレンディングを使用します
( imagealphablending() に
FALSEを渡すのと同じです)。 -
IMG_EFFECT_NORMAL -
IMG_EFFECT_ALPHABLENDと同じです。 -
IMG_EFFECT_OVERLAY - オーバーレイを使用すると、背景の黒い部分は黒のまま。 一方背景の白い部分は白のままとなります。 背景のグレーな部分は、前景のピクセルの色となります。
-
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。
例
例1 imagelayereffect() の例
<?php
// 画像を準備します
$im = imagecreatetruecolor(100, 100);
// 背景を設定します
imagefilledrectangle($im, 0, 0, 100, 100, imagecolorallocate($im, 220, 220, 220));
// オーバーレイアルファブレンディングフラグを適用します
imagelayereffect($im, IMG_EFFECT_OVERLAY);
// 2 つのグレーの楕円を描画します
imagefilledellipse($im, 50, 50, 40, 40, imagecolorallocate($im, 100, 255, 100));
imagefilledellipse($im, 50, 50, 50, 80, imagecolorallocate($im, 100, 100, 255));
imagefilledellipse($im, 50, 50, 80, 50, imagecolorallocate($im, 255, 100, 100));
// 出力します
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
上の例の出力は、 たとえば以下のようになります。
注意
注意: この関数は、PHP がバンドル版の GD ライブラリで コンパイルされている場合のみ使用可能です。
注意: この関数は、GD 2.0.1 以降を必要とします (2.0.28 以降を推奨します)。