[PHP-users 28611] Re: (無題)
KOYAMA Tetsuji
koyama @ hoge.org
2006年 3月 2日 (木) 19:24:50 JST
小山です。
On 3/1/06, 1000 @ e-liveshot.com <1000 @ e-liveshot.com> wrote:
> 1.jpg(背景画像)と2.jpg(物体の画像)が存在する。これを重ね合わせる。
> 重ね合わせて表示させる(本当は保存したい)。
> ※画像サイズは両方とも同じ大きさ96*96
> imagecopymerge($dst_im2,$src_im2,0,0,0,0,96,96,50);
その前で imagecolortransparent() で透明色を指定しているのだから、
imagecopymerge に渡す pct は 100 で良いんじゃないでしょうか。
手元では、以下のコードでそれっぽい動作をしていますけど。
<?php
$bg = imagecreatefromjpeg('/tmp/bg.jpg');
$fg = imagecreatefromjpeg('/tmp/fg.jpg');
$trans_color = imagecolorat($fg, 0, 0);
imagecolortransparent($fg, $trans_color);
$result = imagecopymerge($bg, $fg, 0, 0, 0, 0, 96, 96, 100);
imagejpeg($bg, '/tmp/out.jpg');
?>
> imagejpegで存在しないファイルを作成しようと試みたが結果は
> Warning imagejpeg():Unable to open '5.jpg' for writing in
> とでてしまった。
これはおそらく direcotry の書き込み権限の話なので、imageXXX
関数の挙動とは無関係です。
--
小山哲志@ビート・クラフト
koyama @ beatcraft.com
koyama @ hoge.org
PHP-users メーリングリストの案内