- Bitacora de guebs - hosting, alojamiento web, hospedaje web y dominios - http://bitacora.guebs.com -

Como hacer “thumbnails” de tus fotografias

Publicado por webmaster el día 07/09/2005 en PHP

PHP, junto con la librería GD, permiten la creación y manipulación de imágenes en tiempo real con gran facilidad y lograr unos resultados de una calidad más que aceptable.

Dependiendo de la versión de PHP y la librería GD, es posible crear y manipular imágenes de tipo JPEG, GIF, PNG y WBM, aunque en las últimas versiones no hay soporte para gráficos de tipo GIF. Para saber que formatos soporta tu instalación de PHP solo tienes que ejecutar el siguiente script:

Al ser el más complejo (o al menos completo) de realizar, haremos una función para redimensionar y ajustar la calidad de imágenes JPEG. Crear una función similar para imágenes PNG o WBMP debería resultaros sencillo.

La función recibe 5 parámetros:

  • Localización completa de la imagen original.
  • Localización completa de la nueva imagen, es decir, el “thumbnail” que vamos a crear.
  • Calidad o compresión de la nueva imagen. Los valores posibles van de 0 (peor calidad, mayor compresión) a 95 (mejor calidad, menor compresión).
  • Anchura de la nueva imagen en pixels.
  • Altura de la nueva imagen en pixels.

A propósito de la calidad de las imágenes, debemos tener en cuenta que si la calidad de la imagen original era de por ejemplo el 75% y si especificamos que la calidad de la imagen redimensionada sea del 85%, la calidad de esta no mejorara, se mantendrá igual y solo conseguiremos incrementar el tamaño en bytes de la imagen. Por lo tanto, antes de aplicar esta función a una imagen debemos conocer su calidad actual.

Siguiendo con el mismo tema, los valores de calidad o compresión que se le puede aplicar a una imagen JPEG van del 0% al 95%. Lo lógico sería que fueran del 0% al 100%, pero por algún extraño motivo, la imagen resultante de una compresión del 97% es idéntica a la imagen comprimida al 95%.

A continuación puedes ver la función redimensionar_jpeg() y su aplicación:

Ahora no tienes más que aplicar la función a cada una de las imágenes que desees redimensionar. También existe la posibilidad de ampliar la funcionalidad del script y hacer que este redimensione todas las imágenes de un directorio concreto. Por ejemplo, ejecutar el siguiente script en un directorio redimensionaría todas las imágenes de tipo JPEG del mismo:


Artículo procedente de Bitacora de guebs - hosting, alojamiento web, hospedaje web y dominios: http://bitacora.guebs.com

Dirección del artículo: http://bitacora.guebs.com/articulo/27/como-hacer-thumbnails-fotografias/

Imprimir artículo.