так много комментариев к этому ответу, поэтому я публикую это как ответ.
На моем компьютере все работает.
используйте код svens:
$images = array( $_GET['color'], $_GET['face'], $_GET['hat'] );
// Allocate new image
$img = imagecreatetruecolor(58, 75);
// Make alpha channels work
imagealphablending($img, true);
imagesavealpha($img, true);
foreach($images as $fn) {
// Load image
$cur = imagecreatefrompng($fn);
imagealphablending($cur, true);
imagesavealpha($cur, true);
// Copy over image
imagecopy($img, $cur, 0, 0, 0, 0, 58, 75);
// Free memory
imagedestroy($cur);
}
header('Content-Type: image/png'); // Comment out this line to see PHP errors
imagepng($img);
?>
Я переименовал ваши изображения так, чтобы было проще:
smile: a.png
гарнитура: b.png
синий: c.png
Оказывается, проблема в наложении слоя. Поместить одно за другим
после переименования изображений используйте этот URL - он будет работать (работает на моем компьютере).
YOUR_FILE.php? Шляпа = b.png & цвет = c.png и лицо = a.png
Это все равно даст вам черный фон. Я не уверен, что у вас есть тот же код, что и выше, в вашем файле на сервере - потому что я поиграл с порядком изображений в вашей ссылке, и это не помогло. Попробуйте скопировать этот же код в другой файл, а затем попробуйте. Поиграйте с заказом и проверьте результаты.