Ver Mensaje Individual
  #8 (permalink)  
Antiguo 15/02/2008, 13:07
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: redimensionar imagen

Verás, la función que realiza la redimensión de la imagen es imagecopyresampled(). Por lo tanto, el if cumplirá la función de evaluar los tamaños y decidir si se ha de aplicar esta función. En sí, esta parte ya es la que trabaja en cambiar el tamaño de la imagen:

Código PHP:
$alto = ($datos[1] / $ratio); 
if(
$alto>$alto_max){$ancho=$alto_max*$ancho_max/$alto;$alto=$alto_max;$ancho_max=$ancho;} 
$thumb imagecreatetruecolor($ancho_max,$alto); 
imagecopyresampled($thumb$img0000$ancho_max$alto$datos[0], $datos[1]); 
Por lo tanto, debes evaluar los tamaños mediante una condición if, y sólo si alguna (?: o las dos?) dimensiones es mayor en la imagen real que en la redimension, entonces aplicar ese bloque de codigo, algo así:

Código PHP:
if($datos[0] > $ancho_max or $datos[1] > $alto_max) {
    
$alto = ($datos[1] / $ratio); 
    if(
$alto $alto_max) {
        
$ancho=$alto_max*$ancho_max/$alto;
        
$alto=$alto_max;
        
$ancho_max=$ancho;
    } 
    
$thumb imagecreatetruecolor($ancho_max,$alto); 
    
imagecopyresampled($thumb$img0000$ancho_max$alto$datos[0], $datos[1]); 

Un saludo,