Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/09/2011, 09:55
Avatar de JuJoGuAl
JuJoGuAl
 
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 14 años, 10 meses
Puntos: 19
Pregunta Redimencionar imagen queda Distorcionada

Pues veran he tomado uno de los aportes sacado de esta pagina:

http://www.forosdelweb.com/f18/aport...as-php-569025/

el cual es este:

http://www.forosdelweb.com/wiki/PHP:...as_al_servidor

estoy subiendo una imagen dividia por 3 (3 tamanos diferentes) ahora el problema es que la imagen queda bastante distorcionada y quisiera saber el porque, o si hay otra funcion por alli que me permita evitar esto...

el codigo que uso es el siguiente:

Código PHP:
function findexts ($filename)
        {
            
$filename strtolower($filename);
            
$exts preg_split("[/]"$filename);
            
$n count($exts)-1;
            
$exts $exts[$n];
            return 
$exts;
        }        
        
        function 
crearimagen($id,$ancho,$alto,$nombre)
        {
            require_once 
'ModifiedImage.php';
            
$image = new ModifiedImage($_FILES['pro_imgprinc']['tmp_name']);
            
$ext findexts ($_FILES['pro_imgprinc']['type']); 
            
$imagen.=$id;
            
$imagen.="_";
            
$imagen.=$nombre;
            
$imagen.=".";
            
$imagen.=$ext;
            
$ancho_original=$image->getWidth();
            
$alto_original=$image->getHeight();
            
            if (
$ancho_original>$alto)
            {
                
$image->resizeToWidth($ancho);
            }
            else if(
$ancho_original<$alto_original)
            {
                
$image->resizeToHeight($alto);
            }
            else if (
$ancho_original==$alto_original)
            {
                
$image->resizeToWidth($ancho);
            }
            
$image->save("../imagenes/productos/$nombre/$imagen");
        }
        if(!empty(
$_FILES['pro_imgprinc']) && $_FILES['pro_imgprinc']['error'] == UPLOAD_ERR_OK)
        {
            
//Creo las 3 Copias de Imagenes que Necesito:
            
crearimagen($proid,310,256,'grande');
            
crearimagen($proid,206,170,'normal');
            
crearimagen($proid,155,128,'mediana');
        } 
la variable $proid, es un numero sacado de la bd, sumado 1...

Alguien me puede orientar? gracias

EDITO: o no deberia subir varias imagenes? solo una y las otras 3 las cambio de tamano???

Última edición por JuJoGuAl; 02/09/2011 a las 10:08