Česká vlajka v PHP

Napsal O webu (») 3. 7. 2006 v kategorii PHP/HTML, přečteno: 2811×

Tento článok je určený predovšetkým k pochopeniu základu knižnie GD a jej základných funkcii.

Česká vlajka v PHP


Najprv si povedzme čo vlastne česká vlajka je a z akých častí sa skladá. Je zložená z troch farieb (biela, modrá, červená). Bila a modrá tvoria na sebe dva pruhy, ktorý pretína červený trojuholník. V tomto článku ci zvolíme veľkosť vlajky 300x200px. V príklade budú použité nasledujúce funkcie:

imagecreate(int x, int y) - Vytvorí nový obrázok s rozmermi x a y.

imagecolorallocate(image, int red, int green, int blue) - Vytvorí novú paletu farieb. Prvé definovanie tejto funkcie v scripte určuje farbu pozadia.

imagefilledrectangle(image, int x1, int y1, int x2, int y2, int color) - Nakreslí plný štvoruhlník.

imagefilledpolygon(image, array points, int num_points, int color) - Nakreslí x uholník (v našom prípade trojuhlník).

imagepng(image) - Zobrazí obrázok vo formáte PNG.
Tak, a pustíme sa do tvorby samotnej vlajky. Najprv si spravíme základný čisto biely obrázok:


<?

// Nastavíme hlavičku na formát PNG

header("Content-Type: Image/png");

// Vytvoríme nový obrázok s rozmermi 300x200

$img = imagecreate(300,200);

// Definujeme si bielu farbu, ktorá bude zároveň farbou pozadia

$white = imagecolorallocate($img, 255, 255, 255);

// Obrázok zobrazíme vo formáte PNG

imagepng($img);

?>


Teraz pridáme modrý pás. Bude vychádzať zo stredu obrázku:

<?

header("Content-Type: Image/png");

$img = imagecreate(300,200);

$white = imagecolorallocate($img, 255, 255, 255);

// Definujeme si červenú farbu

$red = imagecolorallocate($img, 255, 0, 0);

// Vytvoríme červený pás s bodu 0x100 do 300x300.

imagefilledrectangle($img, 0, 100, 300, 300, $red);

imagepng($img);

?>


A konečne pridáme červený trojuhlník, čím vznikne kompletný česká vlajka.

<?

header("Content-Type: Image/png");

$img = imagecreate(300,200);

$white = imagecolorallocate($img, 255, 255, 255);

// Definujeme si modrú farbu

$blue = imagecolorallocate($img, 0, 0, 255);

$red = imagecolorallocate($img, 255, 0, 0);

imagefilledrectangle($img, 0, 100, 300, 300, $red);

// Zaznačíme body trojuholníka

$body = array(

0, 0,

0, 200,

150, 100

);

// A nakreslíme ho

imagefilledpolygon($img, $body, 3, $blue);

imagepng($img);

?>


Autor: timbulko
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel šest a dvě