Neden hep siyah php imagefill?

4 Cevap php

Hello guys This is driving me mad. I would really appreciate if you told me any idea about why I see this square in red color just in my local xampp installation. If I run the code in the remote server (http://www.arreglaordenador.com/numberimage2.php) I see the square in black color instead of red. Do you have any ideas?

<?php

$im = imagecreatetruecolor(100, 100);

// sets background to red
$red = imagecolorallocate($im, 255, 0, 0);
imagefill($im, 0, 0, $red);

header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>

Teşekkürler

4 Cevap

Önce farklı bir renk tahsis deneyebilir miyim?

$black = imagecolorallocate($im, 0, 0, 0);
$red = imagecolorallocate($im, 255, 0, 0);

Ben tam olarak neden görmüyorum, ama bu (yani kırmızı nedense bir saydam renk olarak seçilen) bana bir şeffaflık sorunu gibi görünüyor.

Büyük olasılıkla, bu farklı GD sürümleri kaynaklanmaktadır. Eğer uzaktan yerel var ve hangisinin hangisini karşılaştırabilir misiniz?

Kod benim yerel WAMP hem benim hosting hesabı üzerinde sadece iyi çalışır çünkü bu kesinlikle sunucu üzerindeki bir GD konudur.

Eğer görüntü oluşturmak için imagecreatetruecolveya() fonksiyonunu kullandık ve GD sürümü hata var çünkü. imagecreatetruecolveya() (hangi hatırlamıyveyaum), bazı GD sürümlerinde bazı renk fonksiyonu ile geçersiz kılmaz. İki çözüm var.

  1. Son kararlı sürüme GD yükseltmek için barındırma hizmeti isteyin.

veya

  1. Use imagecreate() function to create image identifier instead imagecreatetruecolveya().