Ez a program egy PHP grafikus osztálykönyvtár próbálna lenni. És úgy néz ki, hogy eddig sikerült is neki. némely részei 2 éve porosodnak a gépemen, és most gondoltam úgy, hogy eljött az ideje ezen változtatni.
Letöltés: R.E. PHP Graph v1.0
Dokumentáció letöltése
Dokumentáció online megtekintése
Példa képek
Tudnivalók:
A dokumentációban nagyjából minden le van írva. De azért nagy vonalakban miről is van szó. A Graph.class.php-t kell beilleszteni a programba elsőként. Majd létre kell hozni egy grafika objektumot, amire rá lehet pakolni egyéb objektumokat:
require_once 'rephpgraph/Graph.class.php';
$graph = new Graph(150,150);
$graph->type = 'png';
$graph->transparent = true;
?>
A szélességet és a magasságot kell csak megadni. Valamint megadható a kép típusa, és hogy legyen-e áttetsző a háttérszín. Ha szükség van objektumokra, akkor azt importálni kell a Graph osztály statikus importObject() metódusával. Ha paraméter nélkül hívjuk, akkor minden objektumot importál (Azaz osztályt). Ha stringet kap, akkor az osztály nevét kéri csak. Ha tömböt kap, akkor a tömbben kapja az osztályok neveit.
Az importIterator() ugyanezen elven működik. Csak iterátorokat importál.
Ezek után létre lehet hozni egy tetszőleges objektumot. És a $graph objektum add metódusával hozzá adható a képhez.
require_once 'rephpgraph/Graph.class.php';
$graph = new Graph(150,150);
$graph->type = 'png';
$graph->transparent = true;
$ora = new AnalogClock(74,mktime(7,10,30));
$ora->x = $graph->width-$ora->width/2; //óra középpontjának koordinátái a képen
$ora->y = $graph->height-$ora->height/2;
$ora->background = $ora->createColor(0,0,130);
$ora->transparent = true;
$graph->add($ora); //óra felvétele aképre
$graph->flush(); //kép megjelenítése
?>
A $graph objektum flush() metódusa küldi ki a képet a kimenetre. De lehetőség van lementeni is a képet a
$graph->save('fajlneve.png');
?>
metódushívással, vagy akár letöltésre kiküldeni a böngészőnek:
$graph->saveClient('fajlneve.png');
?>
Ennek kimenete:
Természetesen az óra nem csak statikus időt tartalmazhat, hanem mindig az aktuális időt is.
Terveim közt szerepel még több objektum megírása, de egyelőre sok más elfoglaltság mellett halasztom a dolgot.
Hozzászólások
nagyon király cucc! remélem
Nagyon király cucc! remélem még bővíteni fogod ;)