• 02-02-2009, 12:20:02
    #1
    Üyeliği durduruldu
    .bmp uzantılı resimlerin (bitmap) yeniden boyutlandırılarak gelmesinde sorun yaşıyorum.

    Durum :

    1- apache sunucusunda wbmp ve xbm desteği var.
    2- gd kütüphanesi v2.2

    Fakat durum şu ki, imagecreatefromwbmp ve imagecreatefromxbm fonksiyonları ile imagewmbp, image2wbmp ve imagexbm fonksiyonları çalışmıyor.

    bunlar da resim.php kodları
    (siteadi.com/resim.php?resim=image.bmp&en=100&boy080 formatında yeniden boyutlandırma yapıyor.)

    <?php
    
    //Resmi Yeniden Boyutlandiran Fonksiyonumuz 
    function boyutlandir($resim,$max_en,$max_boy)  
    {  
      ob_start();  
      // Resmin Boyutunu Aliyoruz 
      $boyut = getimagesize($resim);  
      $en    = $boyut[0];  
      $boy   = $boyut[1];  
    
      // Boyut Oranlarini  Belirliyoruz 
      $x_oran = $max_en  / $en;  
      $y_oran = $max_boy / $boy;  
    
      // Resmin Yeni Boyunu Orantili  Sekilde Ayarliyoruz 
      if (($en <= $max_en) and ($boy <= $max_boy)) 
      {  
        $son_en  = $en;  
        $son_boy = $boy;  
      } else if (($x_oran * $boy) < $max_boy) {  
        $son_en  = $max_en;  
        $son_boy = ceil($x_oran * $boy);  
      } else {  
        $son_en  = ceil($y_oran * $en);  
        $son_boy = $max_boy;  
      }  
    
      // Resim Uzantsini Aliyoruz  
      $uzantilar =  pathinfo($resim); 
      $uzanti    = $uzantilar["extension"]; 
    
      if ($uzanti == 'gif') { 
        $eski = imagecreatefromgif($resim); 
      } elseif ($uzanti == 'png') { 
        $eski = imagecreatefrompng($resim); 
      } elseif ($uzanti == 'bmp') { 
        $eski = imagecreatefromwbmp($resim); 
      } else { 
        $eski = imagecreatefromjpeg($resim); 
      }  
      $yeni = imagecreatetruecolor($son_en,$son_boy);  
    
      // Eski Resmi Yeniden Renklendiriyoruz  
      $renk = imagecolorallocate($yeni,255,255,255); 
      imagefill($yeni,0,0,$renk); 
      imagecopyresampled($yeni,$eski,0,0,0,0,$son_en,$son_boy,$en,$boy);  
       
      // Yeni Resmi Tarayiciya Yansitiyoruz  
      if ($uzanti == 'gif') { 
        header("Content-type: image/gif"); 
        imagegif($yeni,null,100); 
      } elseif ($uzanti == 'png') { 
        header("Content-type: image/png"); 
        imagepng($yeni,null,100); 
      } elseif ($uzanti == 'bmp') { 
        header("Content-type: image/vnd.wap.wbmp"); 
        imagewbmp($yeni,null,100); 
      } else { 
        header("Content-type: image/jpeg"); 
        imagejpeg($yeni,null,100);  
      }  
      $icerik = ob_get_contents();  
    
      // Temizlik 
      ob_end_clean();  
      imagedestroy($eski);  
      imagedestroy($yeni);  
      return $icerik;  
    } 
    
    
    $resim     = trim(strip_tags(htmlspecialchars($_GET['resim']))); //Resim Yolu ve Adin Aliyoruz     
    $max_en    = intval($_GET['en']); // Resim Geniligi 
    $max_boy   = intval($_GET['boy']); // Resim Yuksekligi 
    
    if (empty($max_en))  $max_en = 130; 
    if (empty($max_boy)) $max_boy = 80; 
    //Resmin Olup Olmadigini  Kontrol Ediyoruz 
    if ($resim && file_exists($resim))  
    { 
    
      echo boyutlandir($resim,$max_en,$max_boy); 
    } 
    ?>
  • 02-02-2009, 12:24:51
    #2
    Üyeliği durduruldu
    çalışmıyorsa ne yapiyor. hata mı veriyor. hata veriyorsa hata mesajı nedir?
  • 02-02-2009, 12:28:15
    #3
    Üyeliği durduruldu
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    çalışmıyorsa ne yapiyor. hata mı veriyor. hata veriyorsa hata mesajı nedir?
    hiç bir hata vermiyor. açmıyor.

    ama şu var. <image alt=""> buradaki alt tagına bir metin koydum. alt tagını normalde resim olmadığında browserda göstermesine ragmen bu resim.php ile gösterince vermiyor.
  • 02-02-2009, 12:39:06
    #4
    Üyeliği durduruldu
    idealist adlı üyeden alıntı: mesajı görüntüle
    hiç bir hata vermiyor. açmıyor.
    ama şu var. <image alt=""> buradaki alt tagına bir metin koydum. alt tagını normalde resim olmadığında browserda göstermesine ragmen bu resim.php ile gösterince vermiyor.
    header kısmını iptal ederseniz sayfa olarak çağırırsanız hata mesajını görebilirsiniz
  • 02-02-2009, 12:46:43
    #5
    Üyeliği durduruldu
    // header("Content-type: image/vnd.wap.wbmp");

    yaptım.

    sayfada şu an bunlar var.

    RJÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿ ÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿ ÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿ ÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿ ÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿ ÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿ ÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿ ÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿ ÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿ ÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿ ÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿ ÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿ ÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿ ÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀ ÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿ ÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿÀ
  • 02-02-2009, 12:53:22
    #6
    Üyeliği durduruldu
    sistemin calismasi hakkında herhangi bir hata mesajı sorun görülmüyor ama
    imagewbmp($yeni,null,100); şeklinde kullanmissiniz. bmp resimde resim kalitesi diye bir parametre varmı ki?
  • 02-02-2009, 13:01:50
    #7
    Üyeliği durduruldu
    bişeyleri yanlış biliyorum diye düşünüyorum ama manuelde
    PHP: image2wbmp - Manual
    PHP: imagewbmp - Manual
    PHP: imagexbm - Manual

    bu üçü var. tek tek her şeyine baktım. fakat beceremedim.
  • 02-02-2009, 13:10:04
    #8
    Üyeliği durduruldu
    bunlardan imagewbmp kullanman lazim zatende

    oluşturduğun içeriği dosya olarak kaydetmeyi denersen. bir ihtimal resim programlari ile açmayi denemiş olursun
  • 02-02-2009, 13:26:37
    #9
    Üyeliği durduruldu
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    bunlardan imagewbmp kullanman lazim zatende
    oluşturduğun içeriği dosya olarak kaydetmeyi denersen. bir ihtimal resim programlari ile açmayi denemiş olursun
    teşekkür ederim. beceremedim.