PHP va poate fi un instrument util in creerea de imagini, daca acesta este compilat cu suport grafic. Pentru Windows, PHP vine precompilat FARA suport grafic. In linux, la compilare se poate alege optiunea –with-gd. Pentru Windows exista un patch la http://www.boutell.com/gd/ . 45 Pentru crearea unei imagini se foloseste functia ImageCreate(), ca in exemplul de mai jos : $image=ImageCreate(200,150); Culorile se aloca cu ajutorul functiei ImageColorAllocate(), ce accepta urmatorii parametrii : pointer catre imagine, culoare RED, culoare GREEN, culoare BLUE (nuante de la 0 la 255). $gray=ImageColorAllocate($image,204,204,204); $blue=ImageColorAllocate($image,0,0,255); Coordonatele X si Y pornesc din stanga sus spre dreapta jos. • DESEN Liniile se traseaza folosind functia ImageLine(), ce accepta ca argumente pointerul catre imagine, coordonatele x si y de start, coordonatele x si y de final si culoarea. ImageLine($image,10,10,150,30,$blue); In final se poate salva imaginea : ImageJPEG($image) – pentru salvare temporara (catre browser) sau pentru a salva pe disc ImageJPEG($image,”imagine.jpg”); x y 46 Cercurile sau elipsele se deseneaza cu cu ajutorul functiei ImageArc(), cu parametrii pointer catre imagine, coordonatele x si y ale centrului, raza pentru latime, raza pentru inaltime, punctele de start si de finish in grade, pornind de la ora 3 in directia ceasului si culoarea. Dreptunghiurile se deseneaza cu ajutorul functiei ImageRectangle(), cu parametrii pointer catre imagine, x stantga sus, y stanga sus, x dreapta jos, y dreapta jos, culoare). Textul (pe care il vom folosi la contorul dinamic web) se scrie cu ajutorul functiei ImageString(pointer,font,x,y,text,culoare), unde font este un intreg intre 1 si 5. Alte fonturi se pot incarca cu ImageLoadFont(). Daca dorim sa scriem pe verticala folosim functia ImageStringUp(). EX : <? Header(“Content-type: image/jpeg”); $image=ImageCreate(200,150); $gray=ImageColorAllocate ($image,204,204,204); $blue=ImageColorAllocate($image,0,0,255); ImageLine($image,10,10,150,30,$blue); ImageArc($image,150,65,70,70,0,360,$blue); ImageRectangle($image,10,65,150,140,$blue); ImageString($image,1,10,15,”Acesta este un text”,$gray); ImageJPEG($image); ImageDestroy($image); ?>