透過PNGで画像をマスクする


 //ヘッダーでimg画像であることを宣言
header("Content-Type: image/png");

//新規イメージオブジェクトの生成
$base_img = imagecreatefromjpeg('https://yt3.ggpht.com/-QsbVHJovyOM/AAAAAAAAAAI/AAAAAAAAAAA/0fttNKee47I/s48-c-k-no-mo-rj-c0xffffff/photo.jpg');
$mask_img = imagecreatefrompng('mask.png');

//アルファブレンディングフラグを設定(どうゆうこと?)
 imagelayereffect($base_img, IMG_EFFECT_OVERLAY);

//アルファチャンネルを有効にする
 imagesavealpha($base_img,true);

//カラー情報を付与
 $white = imagecolorallocate($mask_img, 255, 255, 255);
 imagecolortransparent($mask_img, $white);

//座標を取得してマスク画像をかぶせる
 $src_w = imagesx($mask_img);
 $src_h = imagesy($mask_img);
 imagecopy($base_img,$mask_img,0,0,0,0,$src_w,$src_h);

//書き出し
 imagepng($base_img);
 imagedestroy($mask_img);
 imagedestroy($base_img);