S třední škola stavební Jihlava Sada 1 - PHP 20. Obrázky z obrázků Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2 - inovace a zkvalitnění výuky prostřednictvím ICT Jan Pospíchal 2012 Projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky
Obrázky z obrázků Knihovna GD nabízí funkce pro úpravu obrázků. Můžeme tak měnit typ obrázků, obrázky převzorkovat, ořezávat, upravovat barvy, vkládat text do obrázků, slučovat obrázky aj. Úpravy obrázků vykazují některé jednotné rysy. Využití se nabízí například při tvorbě fotoakb přístupných přes web.
Převod obrázku do jiného formátu (1) Postup: 1. Z původního (uloženého) obrázku vytvoříme dočasný zdrojový obrázek. 2. Vytvoříme nový prázdný obrázek, který bude dočasným cílovým obrázkem 3. Zkopírujeme zdrojový obrázek do cílového. 4. Uložíme změněný cílový obrázek. 5. Vymažeme (nepovinně) dočasný zdrojový i cílový obrázek.
Převod obrázku typu JPG na GIF (1) 1. Obrázek uložený v souboru *.jpg otevřeme funkcí imagecreatefromjpegpro úpravy vytvoříme dočasný zdrojový obrázek. 2. Dočasný cílový obrázek vytvoříme funkcí imagecreatetruecolor. 3. Dočasný zdrojový obrázek překopírujeme do dočasného cílového funkcí imagecopyresampled. 4. Obrázek uložíme do souboru nebo předáme prohlížeči voláním funkce imagegif. Teprve v tomto okamžiku dochází ke konverzi typu. 5. Dočasné soubory vymažeme z paměti voláním funkce imagedestroy.
Převod obrázku typu JPG na GIF (2) Spuštění skriptu pro konverzi typu obrázku(cílový obrázek předán prohlížeči) Spuštění skriptu pro konverzi typu obrázku (cílový obrázek v původní velikosti uložen do souboru) Spuštění skriptu pro konverzi typu obrázku (cílový obrázek zmenšen na 60 % a předán prohlížeči) Spuštění skriptu pro konverzi typu obrázku (cílový obrázek zmenšen na 40 % a uložen do souboru) Zdrojový text skriptu pro konverzi typu obrázku Zdrojový text skriptu prohlížeče původního a upraveného obrázku
Převod barev na stupně šedé (1) Využijeme funkce imagefilter(), která umí ještě další vytvořit negativ, změnit jas nebo kontrast, vytvořit reliéf, rozmazat obrázek, vyhladit obrázek, vybarvit obrázek atd. Osnova skriptu se příliš neliší od skriptu na změnu typu obrázků. Některé webové servery mají s tímto skriptem problém.
Převod barev na stupně šedé (2) Spuštění skriptu pro převod barev na stupně šedé (cílový obrázek předán prohlížeči) Spuštění skriptu pro převod barev na stupně šedé (cílový obrázek uložen do souboru) Zdrojový text skriptu Zdrojový text skriptu prohlížeče původního a upraveného obrázku
Vložení textu do obrázku (1) Text do obrázku vkládá funkce imagestring(). Nejdříve(pokud je třeba) ho převedeme do znakové sady ISO 8859-2 (Latin 2) užitím funkce iconv(). Text se tak zobrazí správně česky.
Vložení textu do obrázku (2) Spuštění skriptu pro vložení textu do obrázku (cílový obrázek předán prohlížeči) Spuštění skriptu pro vložení textu do obrázku (cílový obrázek uložen do souboru) Zdrojový text skriptu Zdrojový text skriptu prohlížeče původního a upraveného obrázku
Vodoznaky a slučování obrázků (1) Skript využívá funkci imagecopymerge(). Pokusný obrázek sloučíme s logem. Argumenty funkce imagecopymerge: Název cílového obrázku Název druhého zdrojového obrázku (který slučujeme s cílovým obrázkem, v tomto případě logo). Souřadnice x cílového obrázku Souřadnice y cílového obrázku Souřadnice x druhého zdrojového obrázku Souřadnice y druhého zdrojového obrázku Šířka výřezu druhého zdrojového obrázku Výška výřezu druhého zdrojového obrázku Procentuální vyjádření průhlednosti druhého zdrojového obrázku (hodnota 100 znamená úplnou neprůhlednost)
Vodoznaky a slučování obrázků (2) Spuštění skriptu pro sloučení obrázku s logem (cílový obrázek předán prohlížeči) Spuštění skriptu pro sloučení obrázku s logem (cílový obrázek uložen do souboru) Zdrojový text skriptu Zdrojový text skriptu prohlížeče původního a upraveného obrázku Poznámka: Skript provede slučování pouze tehdy, když šířka a výška druhého zdrojového obrázku (loga) není větší než šířka a výška původního obrázku.
Tvorba miniatur (1) K vytvoření zmenšeného obrázku z obrázku uloženého užijeme funkci imagecopyresampled(). Skript má strukturu obdobnou, jakou mají Skript má strukturu obdobnou, jakou mají skripty užívají funkce knihovny GD.
Tvorba miniatur (2) Spuštění skriptu pro tvorbu miniatur(cílový obrázek předán prohlížeči) Spuštění skriptu pro tvorbu miniatur(cílový obrázek uložen do souboru) Zdrojový text skriptu Zdrojový text skriptu prohlížeče původního a upraveného obrázku
Použitá literatura Mach, Jakub. PHP pro úplné začátečníky. 2. přepracované a rozšířené vydání. 1. vydání. Brno: CP Books a. s., 2005. 168 s. ISBN 80-7226-834-1 Naramore, E., Gerner, J., LeScouarnec, Y., Stolz, J., Glass, M. Vytváříme webové aplikace v PHP5, MySQLa Apache. 1. vydání. Brno: ComputerPress, a.s., 2006. 813 s. ISBN 80-251-1073-7 Lacko, Luboslav. PHP a MySQLHotová řešení. 1. vydání. Brno: CP Booksa. s., 2005. 300 s. ISBN 80-251-0397-8 Materiál je určen k bezplatnému používání pro potřeby výuky a vzdělávání na všech typech škol a školských zařízení. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je : Jan Pospíchal Pokud není uvedeno jinak, byly při tvorbě použity volně přístupné internetové zdroje. Autor souhlasí se sdílením vytvořených materiálů a jejich umístěním na www.ssstavji.cz.