JImageLib, nueva librería de Joomla para trabajar con imágenes

Otro de los proyectos del Google Summer of Code que se ha llevado a cabo este verano ha sido JImageLib. Se trata de una librería desarrollada por Daniel Ghilea, un estudiante de rumano de la universidad de Bucharest. La librería trabaja con GD, ImageMagic y GraphicsMagic, por lo tanto tienen que estar instalados en el equipo.

Para instalar la librería solamente hay que descargar el directorio de JImageLib y moverlo al directorio libraries/ de Joomla. Después hay que configurar el fichero config.php con algunas variables necesarias para que todo funcione bien.

Una vez instalado, para usar la librería cuando estamos programando un componente de Joomla, simplemente hay que añadir una línea de código:


jimport( 'JImageLib.JImageLib' );

La librería es realmente potente y fácil de utilizar, y puede resultar muy útil para crear thumbnails automáticamente de nuestros artículos, pasar imágenes a blanco y negro, a sepia, rotarla, redimensionar, etc.Además, la librería trabaja con caché, por lo que la performance del sitio no peligra. Se espera que se implemente en Joomla 1.6.

Vamos a ver como funciona con unos ejemplos muy sencillos.

  1. Crear un objeto nuevo y «setear» la anchura
    
    $img = new JImageLib();
    $img->setWidth(300);
    
    
  2. Cargar la imagen que se va a procesar
    
    if (! $img->load('images/joomla_logo_black.jpg')){
         print $img->getError();
         print "< br / >";    
    }
    if (! $img->setImageLib('im')){
         print $img->getError();
         print "< br / >"; 
    }
    
    
  3. Se le aplica un filtro y un efecto de flipping (vertical)
    
    if (! $img->setFilter('grayscale')){
         print $img->getError();
         print "< br / >";    
    }
    if (! $img->setFlipping('V')){
         print $img->getError();
         print "< br / >";    
    }
    
    
  4. Se le añade un prefijo e información extra
    
    if (! $img->setDirectory('images/thumbs/')){
         print $img->getError();
         print "< br / >";    
    }
    if (! $img->setUseImageSize('both')){
         print $img->getError();
         print "< br / >";    
    }
    if (! $img->setPrefix('thumb_')){
         print $img->getError();
         print "< br / >";    
    }
    
    
  5. Y se genera el thumbnail
    
    if (! $img->getThumbnail()){
        print $img->getError();
        print "< br / >";    
    } 
    
    

Como ves, la forma de manejar las imágenes desde código es muy sencilla. Para el que no sea programador, también se está desarrollando un plugin de contenido, para poder hacer uso de esta librería desde el editor WYSIWYG. Puedes descargarlo en JoomlaCode. Son dos plugins, uno de tipo system y otro de tipo content.

plugins_600x149

El plugin interpreta las etiquetas {image}, Por ejemplo:


{image 'images/joomla.jpg' width 300 sepia wm-file 'images/cancel_f2.png'  wm-position center popup greybox }

codigo_600x250

Una vez introducido el código en el editor, pulsas aplicar y…

wysiwyg_579x250

Luego, en el Front End, la imagen se enlaza con su tamaño original al hacer click, y aparece una ventana modal.

resultado_593x250

Si quieres má imformación, te recomiendo que sigas los artículos que va escribiendo Daniel Ghilea donde va contando sobre el estado de JImageLib. Realmente promete.

Compartir:
Share on facebook
Share on linkedin
Share on twitter
Share on whatsapp
Share on email
Abrir chat
¿Tienes alguna duda que podamos aclarar?