ImageMagick es una aplicación muy potente para la manipulación de imágenes. Por lo general, se utiliza desde la línea de comandos en ambientes Linux.
ImageMagick es capaz de trabajar con una amplia variedad de formatos de imágenes y realizar una gran cantidad de transformaciones sobre ellas.
PHP cuenta con una API propia para que su utilización sea sencilla (Obviamente, requiere que primero se instalen las bibliotecas necesarias): la clase Imagick.
Una instancia de Imagick trabaja asociándole una o más imágenes al momento de su construcción (pasándole un string o un array según el caso):
$ig = new \Imagick("mi_imagen.jpg"); $ig2 = new \Imagick( ["mi_imagen.jpg", "otra_imagen.png"]);
A partir de ese momento es posible realizar modificaciones a la imagen simplemente invocando los métodos de la clase, por ejemplo:
$ig->resizeImage( $width, $height, \Imagick::FILTER_BOX, 0.9 );
Permite redimensionar la imagen al tamaño que se desee (aplicando en el proceso diferentes filtros y borroneos (blur).
Es importante tener en cuenta que todo este procesamiento sucede en memoria, de esa forma es posible emitir el resultado directamente hacia la salida:
header("Content-Type: image/jpg"); echo $ig->getImageBlob();
O almacenarlo en un archivo:
$ig->writeimage( "nueva_imagen.jpg" );
Ahora ya podés hacer que tu aplicación recorte el avatar de tus usuarios (o mejor, que les baje un poco la calidad para limitar su tamaño).
¿Qué otras cosas querrías hacer con las imágenes de tu aplicación?
- Cómo agregar una página de error 500 en un proyecto PHP - 31/10/2024
- ¿Cuántos contenedoresnecesita tu php? - 28/10/2024
- Cuál es el mejor framework PHP para hacer APIs REST - 25/10/2024
1 comentario