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

Del.icio.us Facebook Technorati

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. Huevos de Pascua en PHP
2. Generar documentos de Word
3. Verificar existencia de una URL
4. Modificación de cadenas
5. Optimizar código PHP
6. Calcular la edad con PHP
7. Geolocalización en tu página web
8. Definción y uso de clases en PHP
9. Instalación de phpMyAdmin
10. Recomendar a un amigo en php
Más artículos...

Otros artículos...

Servidores FoxServ: paquete instalador para Windows
Fireworks Líneas distribuidas
Marketing Promos en la portada, buenas o malas
ASP Agilizar la carga de tus páginas ASP
PHP Generación dinámica de imágenes
ASP.net ¿Qué es ASP.net?
Marketing Venda online y cobre con tarjetas de crédito
HTML Tips para diseñar newsletters
Java Script Banners aleatorios con JavaScript
Fireworks Fundir imágenes con Fireworks
Más artículos...