トップページ >  PHP >  PHPで画像をマージする
初版2013/04/16: 最終更新日2013/04/16
PHPで画像をマージする
目次
PHPで画像をマージする
マージする
PHPで画像をマージする
PHPで画像をマージするにはimageCopyMerge関数を使用します。
imageCopyMergeは二つの画像ファイルを座標指定して一つのファイルにするので、引数が多いです。
以下、引数です。

引数意味
第一引数画像先
第二引数画像元
第三引数画像先のX座標
第四引数画像先のY座標
第五引数画像元のX座標
第六引数画像元のY座標
第七引数画像元の幅
第八引数画像元の高さ
第九引数透明度(0~100)


第九引数は0にすると何も起こりません。100にするとimagecopy()と同じ動作になります。
以下がマージするファイルです。

sample1.png


sample2.png


マージする
まず、imagecreatefrompngで、画像ファイルのインスタンスを生成します。その後、imageCopyMergeでマージします。
透過度は50%にしています。画像元と画像先が上下で分かれるようにマージしています。

<?php
//画像作成
$img1 = imagecreatefrompng('sample1.png');
$img2 = imagecreatefrompng('sample2.png');

// マージ
imageCopyMerge($img1,$img2,0,0,0,0,100,20,50);

//画像出力
header("Content-type: image/png");
header("Cache-control: no-cache");
imagepng($img1,'sample3.png');

//メモリの解放
imagedestroy($img1);
?>

上記のphpを実行すると以下のファイルが作成されます。