ARTICULOS

Imágenes y PHP - Biblioteca GD

Autor: Zumbe.net (http://zumbe.net/) - 22/03/2008
Esta obra está bajo una licencia de Creative Commons

En este tutorial aprenderemos a usar algunas funciones de la biblioteca GD, para el tratamiento y creación de imágenes en PHP.

Lo primero y fundamental es tener la biblioteca instalada y funcionando en nuestro servidor. Una vez esto esté confirmado podemos comenzar.

Lo primero de todo es crear una nueva imágen. Para esto usaremos la función imagecreatetruecolor, y la asociaremos a una variable.

$imagen = imagecreatetruecolor(300,200) // ancho x alto

Los dos parámetros que necesita la función son ancho y alto de la imágen.

Ahora que tenemos la imágen creada, vamos a pasar a rellenarla. Pero para ello tendremos que predefinir algunos colores.

$blanco = imagecolorallocate($imagen, 255,255,255); //Creamos y rellenamos de blanco
$negro = imagecolorallocate($imagen, 0, 0, 0);
$rojo = imagecolorallocate($imagen, 255, 0, 0);
$amarillo = imagecolorallocate($imagen, 255, 255, 0);
$azul = imagecolorallocate($imagen, 0, 0, 255);
$cian = imagecolorallocate($imagen, 0, 255, 255);

Con los colores creados, podemos empezar a dibujar formas en la imágen, usando las múltiples funciones habilitadas para ello.

Para crear rectángulos:

imagerectangle($imagen, 0, 0, 149, 39, $negro); //Se hace un rectángulo negro
imagerectangle($imagen, 10, 10, 139, 29, $rojo); //Otro rojo

Para rellenar de un color cual “bote de pintura”:

imagefill($imagen, 5, 5, $amarillo); //Se rellena el espacio en blanco de x,y (método de la semilla)

Escribir textos:

imagestring($imagen, 3, 6, 6, "Holaaaa", $azul); //Se escribe una cadena

Trazar líneas:

imageline($imagen, 75, 1, 30, 39, $cian);
imageline($imagen, 30, 39, 120, 39, $cian);
imageline($imagen, 120, 39, 75, 1, $cian);

Por último, cuando hemos acabado la imágen, la creamos en el formato que queramos (jpg, png, gif…). En este ejemplo hemos creado un png.

header("Content-type: image/png");
imagepng($imagen);
imagedestroy($imagen);

Mediante la función header hemos indicado que el contenido del documento será ima imagen. Este paso es muy importante.
Al usar imagepng, dado que no hemos rellenado el segundo parámetro (que sería la ruta donde queremos guardar el archivo), lo que hace es mostrar la imagen directamente en el documento.

Con el anterior código, lo único que faltaría sería una etiqueta HTML en cualquier web, que llamara a esta imagen (solo que tendrá la extensión PHP, pero el comportamiento es el mismo que un PNG)

<img src="http://example.com/miimagen.php">

Agradecimientos a Statu.

 

Más artículos sobre PHP

1. Utilizar PHP en FrontPage 98
2. Forzar descarga de archivos
3. Creando sitio con forma modular
4. Webs dinámicos con PHP: Introducción
5. Generación dinámica de imágenes
6. Optimizar código PHP
7. Planificación de un proyecto modular
8. Función explode() de PHP
9. Rotador de banners con estadísticas
10. Proteger páginas con password en PHP
Más artículos...

Otros artículos...

Servidores Todo sobre el archivo robots.txt
ASP Utilizando GetRows
Marketing 5 sencillos pasos para ganar clientes
PHP Resolución: JavaScript a PHP
Bases de Datos Instalación de un servidor PostgreSQL bajo Linux
Java Script Fecha completa con JavaScript
PHP Tutorial de sesiones en PHP
ASP ¿Qué es el archivo GLOBAL.ASA?
Java Script Seleccionar y copiar formulario
Photoshop Botones cuadrados
Más artículos...