• 12-07-2010, 22:07:59
    #1
    Kendi localimde ve satın aldığım sunucuda bu işlemi gerçekleştiremiyorum, "xxx/resimyaz.php" grafik dosyası hatalı olduğu için gösterilemiyor." hatası alıyorum. Fakat kiralamış olduğum hostta kodlar sorunsuz bir şekilde çalışıyor.Php veya apache ile alakalı bir sorun olabilir mi? Şimdiden teşekkürler...Bu arada kodlarda şunlar:
    <?php
    // PHP Resim Üzerine Yazı Yazma
    // Herhangi bir resim üzerine yazı yazabilirsiniz.
    // Caner ÖNCEL - http://www.egonomik.com
     
    // Kullanım:
    // Yazılmak istenen metni $_GET ile çağırıyoruz
    // Örnek: resimyaz.php?text=Merhaba Dünya
     
    $resim = "bg_resim.png"; // Üzerine yazılacak resmi seçiyoruz
    $font = "fonts/segoepr.ttf"; // Font dosyası ve yolunu tanımlıyoruz
    $golge = "true"; // Resme gölge eklemek istiyosanız "true" istemiyorsanız boş
     
    $text = $_GET['text'];
    if(empty($text)) {
    $metin = "Metin yazin!"; }
    else {
    $metin = "$text"; }
     
    header('Content-type: image/png');
    $resim_yaz = imagecreatefrompng("$resim");
     
    // Yazı ve gölgenin renk hex kodlarını belirliyoruz
    $gri = imagecolorallocate($resim_yaz, 170, 170, 170);
    $siyah = imagecolorallocate($resim_yaz, 0, 0, 0);
     
    if ($golge == "true") {
    imagettftext($resim_yaz, 16, 15, 59, 222, $gri, $font, $metin); }
    imagettftext($resim_yaz, 16, 15, 58, 221, $siyah, $font, $metin);
     
    imagepng($resim_yaz);
    imagedestroy($resim_yaz);
     
    ?>
  • 12-07-2010, 22:15:44
    #2
    GD kütüphanesi ile ilgili bir sorun sanıyorum.
    EasyPHP kullanıyorsanız aktifleştirmeniz gerekecek.
  • 12-07-2010, 22:29:53
    #3
    Üyeliği durduruldu
    header('Content-type: image/png');

    bu ibareyi kaldırıp hataları görmeyi deneyin. hataları buraya yazarsanız yardımcı olmaya çalışırz
  • 12-07-2010, 23:04:11
    #4
    Eposta Aktivasyonu Gerekmekte
    Font yolunun doğru olduğuna emin misiniz?
    imagettftext fonksiyonunu kullanırken tanimladığınız fontun, belirttiğiniz dizinde olması gerekir.
  • 14-07-2010, 21:27:19
    #5
    Daha önce benimde başıma gelmişti. şu kodu hazırladığınız kodun üst kısmına yerleştirerek tekrar deneyin.
    putenv('GDFONTPATH=' . realpath('./fonts'));
    $dir=opendir('./fonts/');//fontun bulunduğu dizin
    if($dir)
        while($f=readdir($dir)){
            if(preg_match('/\.ttf$/',$f)){
                $font=explode('.',$f);
                define($font[0],realpath('./fonts/'.$f));
            }
        }
    if($dir)
    closedir($dir);
    kodu bu şekilde ayarladıktan sonra fontunuzun ismini yazdığınız kısımda sadece fontun yalın halini kullanın. İlgili satır şu şekilde olmalı
    imagettftext($resim_yaz, 16, 15, 59, 222, $gri, segoepr, $metin); }
    imagettftext($resim_yaz, 16, 15, 58, 221, $siyah, segoepr, $metin);