[Php-avanzado] Redimension de imagenes

Lucas Calviño thelookus en gmail.com
Mie Jun 10 17:56:38 ART 2009


Hola, tengo el siguiente problema. Traigo una imagen cargada desde un 
formulario, todo bien, la guardo correctamente, pero luego quiero 
generar la miniatura, así que chusmeando por mil páginas, armé esto y no 
logro hacerlo funcionar, no se donde está el error.
Si alguien conoce alguna manera más simple para generar miniaturas, se 
agradece mucho. Lucas.


    $thumbpath='../../imgs/descargas/thumbs/';
    $thumbname = "descarga".$id.'.'.$ext[1];

            //REDIMENSIONAR
            $anchura=180;
            $hmax=180;
            $nombre=$_FILES['foto1']['name'];
            $datos = getimagesize($nombre);
            if($datos[2]==1){$img = @imagecreatefromgif($nombre);}
            if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);}
            if($datos[2]==3){$img = @imagecreatefrompng($nombre);}
            $ratio = ($datos[0] / $anchura);
            $altura = ($datos[1] / $ratio);
           
 if($altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;} 

            $thumb = imagecreatetruecolor($anchura,$altura);
            imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, 
$altura, $datos[0], $datos[1]);
            if($datos[2]==1){header("Content-type: image/gif"); 
imagegif($thumb, $thumbpath.$thumbname);}
            if($datos[2]==2){header("Content-type: 
image/jpeg");imagejpeg($thumb, $thumbpath.$thumbname, 75);}
            if($datos[2]==3){header("Content-type: 
image/png");imagepng($thumb, $thumbpath.$thumbname); }
            imagedestroy($thumb);        


Más información sobre la lista de distribución Php-avanzado