Generar Thumbnails con PHP

0
112

PHP Thumb es una librería escrita en PHP 4 y 5 que nos permitirá realizar los procesos de generación de Thumbnails de imágenes subidas al servidor fácil y rápidamente.
Las características que nos ofrece esta clase son:

  • Redimensión de tamaño de la imagen por ancho, alto y porcentaje.
  • Cortar imágenes de acuerdo a las coordenadas especificadas.
  • Rotar la imagen según nuestras necesidades.
  • Agregar nuevas funcionalidades a la clase mediante plugins.
  • Permite realizar múltiples manipulaciones de imagen sin necesidad de volver a inicializar la clase.

Los requerimientos son mínimos:

  • Tener la librería GD activada
  • Tener PHP 5 (Si quieres trabajar con PHP4 hay una versión antigua).

Para empezar primero tenemos que descargar la Clase PHPThumb, y crear un sitio de pruebas en tu local.

Paso 1: Como redimensionar una imagen.

require_once '../ThumbLib.inc.php';
$thumb = PhpThumbFactory::create('test.jpg');
$thumb->resize(100, 100);
$thumb->show();

resize(ancho, alto) : Nos servirá para realizar el thumbnail de una imagen reduciendo su ancho y alto, si no se quiere reducir algún valor (ancho o alto) se deja el campo con el valor “0”.

show() :
Pinta la imagen con código html.

Paso 2: Como cortar una imagen.

require_once '../ThumbLib.inc.php';
$thumb = PhpThumbFactory::create('test.jpg');
$thumb->cropFromCenter(200, 100); //ancho, alto
//$thumb->crop(100, 100, 300, 200); //x,y,ancho,alto
$thumb->save('/path/to/new_image.jpg');


cropFromCenter(ancho, alto) :
Esta función redimensiona la imagen cortándola desde el centro espeficicando su ancho y alto.
crop(x,y,ancho,alto) : Esta es otra alternativa para cortar una imagen especificando las coordenadas (x,y), el ancho y alto de la imagen.
save(directorio) : Guardara la imagen alterada en la ruta especificada (la carpeta debe tener permiso de escritura).

Paso 3: Como rotar una imagen.

$thumb = PhpThumbFactory::create('test.jpg');
$thumb->rotateImageNDegrees(180);
$thumb->show();

rotateImageNDegrees(grados) : Esta función rotara la imagen según el grado especificado, si el valor fuera 180 la imagen quedaría volteada verticalmente.
Para información detallada y documentación sobre la clase pueden acudir a estos enlaces.