Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/02/2008, 18:55
gesking
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
redimensionar imagen

Hola, estuve buscando en Google sobre cambiar el tamaño a las imágenes. Soy novato en este tema... La cuestión es que no entiendo este script:

Código PHP:
$ancho_max=400;
$alto_max=400;
$nombre=basename($_GET['imagen']);
$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] / $ancho_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]);
if(
$datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
if(
$datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
if(
$datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
imagedestroy($thumb); 
Inserto las imagenes así:
<img src="redimensionar.php?imagen=IMAGEN">

Lo poco que entiendo es que, por ejemplo, una imagen tiene de ancho 800x600, la muestra 400x300, si el ancho es mayor a 400px, lo reduce a 400 y hace proporcional a la altura, si la altura es mayor a 400px, lo reduce a 400 y proporciona el ancho.

El tema es que hay una imagen que es menos a 400, tanto de ancho como alto, pero me muestra de ancho 400, es decir, me la estira. Su tamaño original es 130x80 y me lleva la imagen a 400x246px.

No se como hacer, donde poner un gif o algo por el estilo, para que si tanto el ancho como el alto son menores a 400, lo deje como está.

Desde ya gracias