Vamos a subir imagen y redimensionar al 50% es decir le cambiaremos las medidas a la mitad, si mide 1920×1080 el resultado sera de 960×540, también la calidad al 50% y todo con PHP sin usar base de datos.
Usaremos la libreria class.upload.php para subir y redimensionar las imágenes, en la opción de descarga de mas abajo encontraran todos los archivos del ejemplo.
Código
El código para subir y redimensionar la imagen es:
[code language=”php”] include "class.upload.php";if(isset($_FILES["image"])){
$up = new Upload($_FILES["image"]);
$correct= false;
if($up->uploaded){
$up->Process("uploads/");
if($up->processed){
$up->image_resize = true;
$up->image_x = $up->image_src_x/2;
$up->image_ratio_y = true;
$up->jpeg_quality = 50;
$up->Process("uploads2/");
if($up->processed){
$correct = true;
}
}
}
}
[/code]
Como podemos ver el resize inicia donde hacemos $up->image_resize=true, asignamos el parametro $up->image_x que seria la nueva medida y asignamos $up->image_src_x/2 que seria la mitad de la medida original.
Con $up->image_ratio_y = true, conservamos la equivalencia de medida en Y.
Con $up->jpeg_quality = 50, asignamos la nueva calidad de la imagen que puede ser de 0 a 100;
Como resultado vamos a obtener imágenes mas ligeras.
La herramienta Upresix la desarrolle con la finalidad de optimizar las imágenes de mis sitios.
Descargar
En el paquete de descarga encontraran:
- Formulario para subir imágenes
- Procesamiento de imágenes
- Librería class.upload.php
Link: https://drive.google.com/file/d/1GHepwHZlbabLKB36edQHapNnbw6SiH5G/view?usp=sharing
Para instalar y ejecutar el ejemplo solo deben copiarlo a la carpeta htdocs/ o subirlo al servidor y ejecutarlo. No requiere base de datos. Esta sujeto al limite de subida de imágenes del servidor, normalmente de 2MB.
Que opinan? No se olviden de comentar. Saludos
Agustin: Muchas gracias por compartirlo, estoy usando tu framework en mis aplicaciones sencillas que hago ! esto me ayudara a hacer una tienda virtual de productos.
Saludos desde Nicaragua
Saludos!