Le librerie GD, sono per l’appunto delle librerie, utilizzate con il linguaggio PHP, utili per la creazione e la personalizzazione di immagini.
Esistono attualmente 2 tipi di librerie GD, per via di una passata violazione di copyright del formato GIF. Ovvero, fino alla versione 1.6 sono supportati i formati GIF, JPEG e PNG.
Dalla versione 1.6 in poi rimangono supportati solo i formati PNG e JPEG.
Le librerie possono essere usate per svariati scopi grafici, utilizzando il nostro server come elaboratore immagini.
Vi sono inoltre un’infinità di funzioni per l’elaborazione delle immagini.
Vi elencherò alcune funzioni basilari, con una breve descrizione del loro utilizzo:
Da notare, che alle immagini può essere applicato del testo, quindi unire anche immagine-testo.
Ora un rapido esempio pratico di unione di due immagini, per la creazione di un markers utilizzabile su Google Maps.
<?php $file = ‘url’; // immagine uno $file2 = ‘url2’; // immagine 2 // Recupero dimensioni immagini $size=getimagesize($file); $size2=getimagesize($file2); // Creazione immagini da utilizzare per l’elaborazione $img=imagecreatefrompng($file); $img2=imagecreatefrompng($file2); // Aggiunta colore e trasparenza allo sfondo $imgcolore = imagecolorallocate($img2, 0, 0, 0); imagecolortransparent($img,$imgcolore); // Ridimensionamento marker imagecopyresampled($img,$img2,7,9,0,0,55,55,$size2[0],$size2[1]); // Aggiunta nome $imagename = 'marker.png'; $path = ‘url dove salvare img’; imagepng($img, ''.$path.$imagename.''); $fh = fopen(''.$path.$imagename.'', 'a+'); // Libero la memoria imagedestroy($img); ?>
Il marker è stato ora creato ed è utilizzabile. E’ possibile rendere il codice dinamico applicando piccolissime modifiche.
Il resto della documentazione ufficiale è disponibile su php.net
Per ulteriori dubbi non esitate a contattarci.
Seguiteci anche su Facebook, Google Plus, Tumblr e Twitter, per restare sempre in contatto con noi e con le nostre guide.
Web Developer da oltre 10 anni e Blogger. Ogni giorno si applica al perfezionamento e all’apprendimento in campo informatico, di comunicazione e di marketing.