Sunteți pe pagina 1din 2

PROCESARE GRAFICA IN PHP

• Crearea unei imagini, setarea culorilor


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);
?>

S-ar putea să vă placă și