+ Responder ao Tópico



  1. #1
    jamba
    Visitante

    Padrão Imagens com GD

    Eae forum blz?

    Estou tentando desenvolver um script em php que redimensione o tamanho das imagens sem modifica-las e nem cria-las. Quero apenas pegar a foto e diminui-la.

    Código :
    Header("Content-Type: image/jpeg"); // No comeco da pagina
    for($ind = 1; $ind <=30; $ind++){
      $fotos = "fotos".$ind;
      if($row["$fotos"]!=0){
    	$fotos = $row["$fotos"];
    	$altura = "80";
    	$largura = "100";
    	$img = "/diretorio/images/".$fotos."";
    	$img_org = ImageCreateFromJPEG($img);
    	$pX  = Imagesx($img_org);
    	$pY  = Imagesy($img_org);
    	$img_fin = imagecreatetruecolor($largura,$altura);
    	imagecopyresampled($img_fin,$img_org,0,0,0,0,$largura+1,$altura+1,$pX,$pY);
    	ImageJPEG($img_fin);
    	ImageDestroy($img_fin);
    	ImageDestroY($img_org);
      }
    }

    Qdo vejo na tela o resultado: ÿØÿà ÿØÿà
    Nunca mexi com a GD e nem sei onde estou errando.
    Alguem conhece?

    Valeu

  2. #2

    Padrão Imagens com GD

    Código :
       include("hft_image_errors.php");
       include("hft_image.php");
     
        $width=100;
        $height=100;
     
        $image = new hft_image("Endereco da Imagem");
     
         if($image->get_error() == true){
             echo "erro!";
         }else{
             header('Content-type: image/jpeg');
             //resize it
             $image->resize($width, $height, '-');
             //output to the browser
             $image->output_resized("", "JPG");
         }

    baixe as classes:

    http://pitsa.zapto.org/galeria/TMP/classes.tar.bz2

    e utilize o codigo acima

  3. #3
    jamba
    Visitante

    Padrão Imagens com GD

    Ae PiTsA, rolou esse script mas nao consigo fazer com que execute isso em todas as imagens, coloca-lo dentro de um loop.

    Código :
    function makeImage($img) {
      $width = 100;
      $height = 100;
      $image = new hft_image("/usr/home2/couples/public_html/socios/images/".$img."");
      if($image->get_error() == true){
    	echo "erro!";
      } else {
         $image->resize($width, $height, '-');
         $image->output_resized("", "JPG");
       }
    }
     
    if ($res) {
    while ($row=mysql_fetch_array($res)) {
      for($ind = 1; $ind <= 30; $ind++){
        $fotos = "fotos".$ind;
        if($row["$fotos"] != 0) {
          $fotos = $row["$fotos"];
          makeImage($fotos);
        }
      }
    }
    }

    Eh possivel executar a funcao dentro de um loop?
    Estou quase acreditando que nao.
    Valeu a ajuda

  4. #4

    Padrão Imagens com GD

    Do jeito que vc esta fazendo naum funciona, pois na primeira chamada da função output_resized ele ira retornar a imagem no navegador..... na segunda volta do looping ele ja enviou os dados ao navegador anteriormente....

    mudei um parametro e agora ele ira salvar no disco as fotos redimensionadas, e faço a exibição delas com a tag IMG do html...

    Código :
    function makeImage($img) {
      $width = 100;
      $height = 100;
      $image = new hft_image("/usr/home2/couples/public_html/socios/images/".$img."");
      if($image->get_error() == true){
       echo "erro!";
      } else {
         $image->resize($width, $height, '-');
         $image->output_resized("/usr/home2/couples/public_html/socios/images/pq_" .$img, "JPG");
       }
    }
     
    if ($res) {
    while ($row=mysql_fetch_array($res)) {
      for($ind = 1; $ind <= 30; $ind++){
        $fotos = "fotos".$ind;
        if($row["$fotos"] != 0) {
          $fotos = $row["$fotos"];
          makeImage($fotos);
          echo "<img src='PATH/pq_" . $fotos . "'>";
        }
      }
    }
    }

  5. #5
    jamba
    Visitante

    Padrão Imagens com GD

    AEEEEE...vlaeu PiTsa...agora deu certo..muito obrigado

  6. #6
    Visitante

    Padrão Imagens com GD

    Bom esta tudo na boa, funfando legal..mas agora eh o seguinte.
    Se as imagens estao sendo gravadas no disco, como faco para tirar essas imagens do disco?

    Eh que estou usando um sistema que rola o seguinte.
    Se o cara estiver autenticado, mostra a pagina com as fotos normais grandes, senao mostra outra pagina com as fotos redimensionadas.

    Acontece que qdo nao autenticado, vejo a pagina com as imagens redimensionadas e qdo autenticado mostra a pagina com o nao redimensionamento porem as imagens estao vindo redimensionadas..deu pra entender?. Em ambas as paginas uso o mesmo link em <img src=>

    Valeu mais uma vez