で透明度を持つ2枚の画像をマージします。私の問題は、イメージを統合すると、イメージの透明部分がドロップされてしまうことです。 (注:
は、私はPHPを経由して背景透明度を持ついくつかの.png年代の合成画像を作成し、自分のデータベースに結果画像を保存しようとしてるPHP
そして、私はもっとこのような何かを探しています:これは、このような画像を生成
$base = imagecreatefrompng('application/assets/images/vel1_bg.png');
imagealphablending($base, true);
list($baseWidth, $baseHeight, $type, $attr) = getimagesize('application/assets/images/vel1_bg.png');
$user_board_items = $this->config->item('user_board_items');
foreach($array as $key => $value){
$item = imagecreatefrompng('application/assets/images/items/' . $user_board_items[$value[0]] . '.png');
imagealphablending($item, true);
list($width, $height, $type, $attr) = getimagesize('application/assets/images/items/'. $user_board_items[$value[0]] . '.png');
imagecopymerge($base,
$item,
floor(($value[1]/100) * $baseWidth),
floor(($value[2]/100) * $baseHeight),
0,
0,
$width,
$height,
100);
imagedestroy($item);
}
//We have to capture the output buffer
ob_start();
imagepng($base);
$baseimg = ob_get_clean();
:
この
は、合成画像を作成するための私のコードです透明セクションがどのように表現されるか)
これが役立つことがあります。http://stackoverflow.com/questions/3355993/phpgd-imagecopymerge-not-retaining-png-transparencies/3356419#3356419私は 'imagecopymergeを思い出すように見えます'問題を引き起こす可能性があります。代わりに 'imagecopyresampled'を試してください。 – Mike