Redimensionar Imagenes con PHP
hola amigos cuantos no hemos tenido el problema con algunas imagenes que son muy grandes para nuestro diseño q tenemos que hacer thumbnails
nada ya eso se termino con este script podemos hacer todo esto podemos redimensionar imagenes en formatos jpg,png y los famosos gif
para esto solo basta con pasarle la url de la imagen y listo ahora les explicare un poco en que consiste todo
<?php
// Configuracion de la altura y ancho maximo de la imagen
$anchura=600;
$hmax=400;
// Parametro a enviar - es decir origen de la imagen
$nombre=$_GET['imagen'];
// Tomando informacion de la imagene, esta funcion envia los datos a un array
$datos = getimagesize($nombre);
if($datos[2]==1){$img = @imagecreatefromgif($nombre);} // si es un Gif
if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);} // si es un jpg
if($datos[2]==3){$img = @imagecreatefrompng($nombre);} // si es un png
/*
aqui empieza lo bueno
como bien sabemos no podemos redimensionar una imagen vertical de la misma forma que una horizontal
bueno esta parte del script no ayuda a poder hacerlo lo que realiza es dividir el ancho original entre
el ancho maximo y luego divide la altura original entre el resultado anterior
bueno esto es para el ancho
*/
$ratio = ($datos[0] / $anchura);
$altura = ($datos[1] / $ratio);
/*
Para el Alto
sera esto primero pregunta si el alto es mayor que el alto maximo que hemos definido
esto solo significa que es una imagen vertical claro si la condicion nos da true
lo que aremos sera multiplicar la altura maxima por la anchura que hemos definido
y la dividimos entre la altura esto nos dara una imagen vertical apropiada para
nuestra muestra
*/
if($altura>$hmax){
$anchura2 = $hmax*$anchura/$altura;
$altura = $hmax;
$anchura = $anchura2;
}
$thumb = imagecreatetruecolor($anchura,$altura); // se crea una imagen en blanco
// Procedemos a remplazar la imagen antigua por la nueva
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
// Preguntamos el tipo de imagen para saber que cabezera enviar
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); }
// Destruimos la imagen temporal para no recargar el servidor
imagedestroy($thumb);
// Listo ya tenemos nuestro redimensionador listo
?>
Origen : No lo recuerdo
No Todos se lo podemos responder desde los comentarios, para cualquier duda o sugerencia los invitamos tambien a usar el FORO y las REDES Sociales, Saludos a Todos
Nick :webmaster
Dice :deberas colocar la ruta de la imagen
Nick :Guillermo
Dice :me gustaría saber si rescato la imagen con un $_FILES['file_foto1'] como sería al colocar en el origen de la imagenesgracias