Introduzione alle librerie grafiche GD [PHP]

Introduzione alle librerie grafiche GD [PHP]

Breve introduzione all'utilizzo delle librerie grafiche GD in PHP


lettura 2 min
01/05/2008
programmazione web

PHP come molti credo sapranno è un linguaggio di script lato server ed è dotato di innumerevoli librerie che possono essere aggiunte, basta configurare PHP per usarle... una di queste è la libreria GD che permette di creare delle imagini dinamicamente mediante l'uso di uno script e qundi modificarle in base a ciò che viene richiesto e/o letto, un esempio sono le InfoBox che si trovano nelle firme dei forum, quelle sono create da script in php che mostrano i risultati al browser che la visualizza dopo aver raccolto gli opportuni dati.

Ecco un semplice script per apprendere...

1 2 3 4 5 6 7 8 9 10 11 12 13 14// Istanzio una nuova immagine di dimensioni x=200 e y=300 $image = imageCreate(200, 300); // Assegno il primo colore, questo colore sarà anche lo sfondo dell'immagine $white = imageColorAllocate($image, 255, 255, 255); // Assegno un secondo colore, da utilizzare per colorare il testo $black = imageColorAllocate($image, 0, 0, 0); // Visualizzo il testo "HelloWorld" imageString($image, 2, 100, 100, "HelloWrold", $black); // Imposto correttamente gli header header("Content-type: image/png"); // Invio l'output come immagine PNG imagePng($image); // Libero la memoria imageDestroy($image);

Supponendo che tutti sappiano il php e chiarendo che questa nn è una guida al php ma una base di apprendimento per le librerie GD non dico nulla e lascio che i commenti nello script parlino da soli.

Nelle ultime versione della libreria GD vi è anche un supporto per il canale Alpha (Trasparenza)

Ecco un esempio di immagine generata con la libreria GD:

Esempio generato con libreira GD

Lo script php raccoglie i vari dati e li mostra sotto forma di immagine, a ogni ip, OS, browser, data, ora o giorno l'immagine sarà diversa, le informazioni vengono prese da chi la guarda. Con una piccola modifica sarebbe possibile memozizzare ogi informazione in un file o database.