Pequeño script que nos devuelve una imagen redimensionada

Este es un script, que nos devuelve una imagen redimensionada proporcionada de un jpg, gif o png.

<?php
   $anchura=$_GET['ancho'];
   $hmax=$_GET['alto'];
   $nombre=$_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] / $anchura);
   $altura = ($datos[1] / $ratio);
   if($altura&gt;$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);
   }
   if($datos[2]==2) {
      header("Content-type: image/jpeg");
      imagejpeg($thumb);
   }
   if($datos[2]==3) {
      header("Content-type: image/png");
      imagepng($thumb);
   }
   imagedestroy($thumb);
?>

Y lo utilizamos de la siguiente manera.

<img src=”nombre_script.php?imagen=<ruta_imagen>&ancho=<ancho_en_px>&alto=<alto_en_px> alt=”<alt>” />

Cuando se cumple la primera condición de ancho o alto, nos devuelve la imagen redimensionada hasta ese punto.

Post a Comment

Your email is never shared. Required fields are marked *

*
*