Práca s GD knižnicou - 1. diel

Práca s GD knižnicou - 1. diel

V článku se dozvíte o základních funkcích pro tvorbu obrázků pomocí GD knihovny. Ukážeme si i malý příklad jak vytvořit obrázek.
V tomto díle se podíváme co je to GD knihovna, jak vytvořit obrázek, změnit barvu a odeslat prohlížeči.

GD knihovna se používá pro generování obrázků a práce s nimi. Aktuální verzi naleznete na http://www.boutell.com/gd/.

A nyní přejdeme k práci s touto knihovnou. Nejdříve je potřeba vytvořit základní obrázek nebo použít již vytvořený (což může ušetřit zdroje serveru, jelikož se nemusí generovat celý pokaždé znovu). Pro vytvoření obrázku slouží příkaz: ImageCreate (int x, int y); tento příkaz vytvoří prázdný obrázek o rozměrech x * y.

ImageCreateFromGif (string file); ImageCreateFromJpeg (string file);
ImageCreateFromPng (string file); ……………..

Nahraje obrázek gif/jpeg/png/… se kterým můžeme dále pracovat. Tato funkce je vhodná pro nahrání části obrázku která je stále statická a je tudíž zbytečné zatěžovat zdroje serveru.

ImageGif (odesilany_obrazek, string soubor); ImagePng (odesilany_obrazek, string soubor); ImageJpeg (odesilany_obrazek, string soubor); .......
Když vygenerujete obrázek je zapotřebí ho uložit nebo odeslat prohlížeči. Na to slouží tato funkce. Parametr odesilany_obrazek odkazuje na funkci ImageCreateFrom.. nebo ImageCreate a parametr soubor je nepovinný a použijeme ho pouze tehdy když chceme vygenerovaný obrázek uložit.

ImageColorAllocate(obrazek,RGB,RGB,RGB);
Obrazek je zase odkaz na funkce pro vytvoření obrázku, RGB zadává kód barvy (červená, zelená a modrá) přičemž hodnoty jsou od 0 do 255. Tato funkce se používá k přiřazování barev a je potřebné ji proto zavolat vždy, když chceme použít barvu. Proto když použijeme funkci poprvé tak v našem případě změní barvu vytvořeného čtverce na černou.

ImageDestroy (obrazek)
Uvolní systémové prostředky. Parametr obrazek ukazuje na funkce ImageCreateFrom.. nebo na funkci ImageCreate.
<?php

// odešle hlavičku prohlížeči kde specifikuje že se jedná o jpeg obrázek.

header ("Content-type:image/jpeg");

// Vytvoří obrázek o rozměrech 75 * 75 px.

$obrazek = ImageCreate(75,75);

// Nastaví barvu obrázku na 0,0,0 (RGB kód který odpovídá #000000).

$barva_cerna = ImageColorAllocate($obrazek,0,0,0);

// Odešle prohlížeči vygenerovaný obrázek.

ImageJpeg ($obrazek);

// Uvolní systémové prostředky.

ImageDestroy ($obrazek);

?>
Výsledok:
Obrázok pomocou GD

A to je pro tento díl vše. V příštím díle se podíváme na vykreslování obrazců a geometrických tvarů do našeho obrázku.
Alternatívne verzie: Text PDF Voice
Autor: Los.Pavlos · Kategória: Programovanie · Dátum: 04.06.2005 15:37

Komentáre

#1 prxman E-mail
13.02.2008 22:35
Chcel by som sa ta spýtať na niečo ohľadom PHP programovania. Ide o prikaz imagecreatefromjpeg(XXX). Chcel by som dať namiesto XXX adresu dákeho obrázku. Problém je v tom, že mi to funguje len pokiaľ ide o lokálnu adresu (napr. toto.jpg), ale nie ak ide o adresu na internete (napr. http://xxx.com/toto.jpg). Nevieš mi povedať, či sa to dá nejako vyriešiť? Chcel by som totiž pracovať s obrázkami na vzdialených serveroch. Ďakujem. ;)

#2 havo
03.06.2008 13:14
Viem, že toto je blbá poznámka, ale nakoľko ide o prvý článok seriálu o práci s nejakou knižnicou, možno by nezaškodilo doň pridať aj ako si tú knižnicu nainštalujem a tiež, či môžem čakať, že tú knižnicu budú mať naištalovanú, napríklad aj na php5.cz, kde mám web ( poprípade, ako sa to dá riešiť).

Osobné údaje
Captcha
Odpíšte text z obrázku. Rozlišujú sa malé a veľké písmená.
Obsah
Možnosti