• 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.