Dualwarior adlı üyeden alıntı: mesajı görüntüle
imagecolorallocate yerine
imagecolorallocatealpha fonksiyonu ile renginizi oluşturun.Bu fonksiyonda, ek olarak bir alpha kanalı giriyorsunuz.Daha sonra imagefill ile bu renk ile boyarsınız ve png olarak kaydedersiniz.
Çok teşekkür ederim. Ancak yukarda belirtmediğim için şöyle bir problem oluştu.
Benim asıl yapmak istediğim şu:
mesela elimde 50x50 bir resim var. Bunun formatını, transparan renginin ne olduğunu bilmiyorum çünkü değişebilir.
Ben bu 50X50 lik resmi 100x100 lük bir resim üzerine koymak ve boş kalan kısımları transparan bırakmak istiyorum. Ancak 50x50 lik resimde de transparan bölümler varsa problem çıkıyor. Nasıl çözebilirim?

Yazdığım kod şöyle:
$im = ImageCreateFromPNG('1.png');
$im_dest = imagecreatetruecolor (1180, 1150);
imagecolorallocatealpha($im_dest, 255, 255, 255, 127);
imagecolorallocatealpha($im_dest, 0, 0, 0, 0);

imagealphablending($im_dest, false);

imagecopyresampled($im_dest, $im, 0, 0, 0, 0, 180, 150, 180, 150);

imagesavealpha($im_dest, true);

imagepng($im_dest, 'cikti.png');