Logo GNU
Kodovani Předchozí Následující Obsah

10. GIMP - Kreslící program podobný Photoshopu

GIMP (GNU Image Manipulation Program) je kreslicí program pro X Window srovnatelný s Photoshopem. Jedná se o horkou novinku, protože se právě pracuje na verzi 1.0, která by měla být k dispozici co nevidět. Poslední vývojové verze jsou už poměrně stabilní a je možné je používat pro běžnou práci. ( screenshot malý, screenshot velký)

10.1 Historie projektu

Projekt rozběhli pánové Spencer Kimball a Peter Mattis, kteří v roce 95 vydali první vývojovou verzi. Přesto, že se jednalo o rozhodně nejmocnější volně dostupný kreslící program pro X window, měl GIMP mnoho nedostatků - celý obrázek uchovával v paměti jako bitmapu a proto dokázal pracovat jen s obrázky do velikosti přibližně 1280x1024. Navíc byl velmi nestabilní a pomalý. Pro GUI používal knihovnu Motif, která je komerční a tak většina lidí neměla možnost si GIMP přeložit a musela používat staticky linkované verze, které jsou zbytečně veliké. Proto někteří lidé GIMP zavrhli.

K projektu se ale připojilo mnoho dalších vývojářů a začali horlivě pracovat. Od té doby byl GIMP vpodstatě celý přepsán. Pro jeho účely vznikla nová knihovna pro tvorbu GUI - GTK+ (GIMP toolkit, později General Toolkit), která je nyní asi nejlepší GUI knihovna dostupna pro X Window - není příliš velká, je docela rychlá a dobře vypadá. Navíc GIMP nyní podporuje více layerů (vrstev obrázku, které se potom promítnou na sebe) a má svojí správu paměti pro větší obrázky a tak je použítelný i pro opravdu velká rozlišení. Každý obrázek rozdělí na části velikosti většinou 64x64 (tiles) a v paměti ukládá vždy jenom několik naposled používaných částí.

GIMP má většinu užitečných funkcí z programu Photoshop a některé navíc. Může tedy konkurovat drahým komerčním produktům.

10.2 Základní funkce

Program toho umí hodně, proto jen několik nejzákladnějších funkcí:

Jako většina kreslících programů umí GIMP vybírat čtvercové, eliptické, jednobarevné, nebo ručně či bezierovou křivkou ohraničené oblasti. Má ale navíc tool jménem Intelligent Scissors (který momentálně ve vývojových verzích nechodí). Zadáte body na hranici oblasti, kterou chcete vybrat a GIMP je spojí křivkou tak, aby hranice šla pokud možno po stejné bravě. Je tak velmi snadné oddělit například postavu od pozadí přesto, že pozadí není jednobarevné. Všechny tyto nástroje podporují antialiasing a feather (vybraná oblast se rozmaže do vzdálenosti zvoleného počtu pixelů). Tím jdou dělat velmi pěkné efekty. Navíc lze oblasti libovlně sčítat a odčítat.

Je možné kreslit tužkou, štětcem a sprejem, gumovat, rozmazávat, nebo vyplňovat barvou či vzorem. Zajimavý je Blend tool, který umožňuje vytvářet barevné přechody. Umí přechody od barvy popředí do pozadí, ale i libovolné jiné, které lze vytvářet v gradient editoru. Přechody mohou být lineární, kulaté, bilinearní, čtvercové konické(symetrické a nesymetrické), nebo podle vzdálenosti od hranice vybrané oblasti.

Transform tool umožňuje vybrané oblasti zvětšit, zmenšit, zkosit, nebo perspektivně zkreslit danou oblast.

GIMP dále obsahuje nástroje na kopírování, posouvání, převracení, psaní textu a retušování. Má také velkou sadu funkcí pro nastavování parametrů obrázku (kontrast, jas, gamma korekce, teplota barev atd...), konverzi mezi RGB, Indexed a Grayscale obrázky atd...

Užitečná je i práce s layery - obrázek se může skládat z několika vrstev, které jsou částečně průhledné a položeny na sebe. GIMP má u každého layeru alpha kanál a tak se mohou různě prolínat. Nastavením operace pro skládání layerů lze jednotlivé vrstvy například odčítat, násobit apod...

10.3 Rozšiřitelnost

Jednou z nejdůležitějších vlastností GIMPu je jeho rozšiřitelnost. GIMP umožňuje psaní pluginů, které jsou externí programy a pomocí knihovny libgimp komunikují s GIMPem, který jim zprostředkovává jakýsi server. Narozdíl od většiny ostatních programů se tu pluginy nestarají pouze o filtry, nebo ukládání a čtení souborů v různých grafických formátech. GIMP pluginům zprostředkovává mnoho funkcí a tak lze vytvářet i mnohem komplikovanější věci.

10.4 Filtry

Filtry jsou externí programy, které aplikují na obrázek různé efekty (jako je emboss), nebo generují úplně nové obrázky (jsou například filtry pro generování Mandelbrotovy množiny atd.).

Současná verze Gimpu obsahuje následující filtry:

Animation/Animation Playback, Artistic/Apply Canvas, Artistic/Cubism, Artistic/Mosaic, Artistic/Oilify, Artistic/Van Gogh (LIC), Artistic/Warp, Blur/Blur, Blur/Gaussian Blur (IIR), Blur/Gaussian Blur (RLE), Blur/Motion Blur, Blur/Pixelize, Blur/Variable Blur, Colors/Alien Map, Colors/Color Exchange, Colors/Colorify, Colors/Filter Pack, Colors/Gradient Map, Colors/Hot, Colors/Max RGB, Colors/Scatter HSV, Colors/SmoothPalette, Colors/Value Invert, Combine/Depth Merge, Combine/Film, Combine/Fuse, Crypt/Digital Signature, Crypt/Encrypt and Decrypt, Crypt/Stegano, Distorts/Blinds, Distorts/Curtain, Distorts/Emboss, Distorts/Engrave, Distorts/IWarp, Distorts/Polar Coords, Distorts/Ripple, Distorts/Shift, Distorts/Stained Glass, Distorts/Twist, Distorts/Value Propagate, Distorts/Waves, Distorts/Whirl and Pinch, Edge-Detect/Edge, Edge-Detect/Laplace, Edge-Detect/Sobel, Enhance/Deinterlace, Enhance/Despeckle..., Enhance/Destripe..., Enhance/NL Filter, Enhance/Sharpen..., Generic/Convolution Matrix, Generic/Universal, Glass Effects/Apply Lens, Glass Effects/Central Reflection, Glass Effects/Conical Anamorphose, Glass Effects/Glass Tile, Glass Effects/Refract, Image/Encript & Decript, Light Effects/FlareFX, Light Effects/GFlare, Light Effects/Sparkle, Light Effects/SuperNova, Map/Bump Map, Map/Coordinate Map, Map/Displace, Map/Fractal Trace, Map/Illusion, Map/Make Seamless, Map/Map Object, Map/Paper Tile, Map/Small Tiles, Map/Tile, Misc/Magic Eye, Misc/Stereogram, Misc/Video, Noise/Noisify, Noise/Randomize, Noise/Spread, Render/CML explorer, Render/Checkerboard, Render/Diffraction Patterns, Render/Figures, Render/Flame, Render/Grid, Render/IfsCompose, Render/Julia Fractal, Render/Mandelbrot Fractal, Render/Maze, Render/Plasma, Render/Qbist, Render/Sinus, Render/Solid Noise

Uživatele podobných programu pod Windows možná překvapí, že pluginy běží v multitáskingu - může běžet výpočet nějakého efektu na jedné části obrázku, zatímco na druhé je možné kreslit, nebo počítat jiný efekt...

10.5 Extensions

Druhá možnost, jak rozšiřovat GIMP je psát extensions. Narozdíl od Filtrů extensions nejsou spojeny z aktuálním obrázkem a mohou si vpodstatě dělat, co chtějí. Proto se mohou chovat podobně, jako nástroje zabudované přímo do GIMPu.

10.6 Procedural Database

Procedural database se stará o provázání služeb GIMP, pluginů a Extensions. Každá užitečná funkce se zaregistruje do této databáze. Programy ji potom můžou využívat k jejich volání. Pokud funkce není implementována přímo v GIMPu, zavede se odpovídající plugin, který funkci obsahuje. To umožňuje používat funkce pluginů i neinteraktivně a naopak pluginy mohou ovládat GIMP podobným způsobem, jako uživatel.

10.7 Script fu

Script fu je jedna z nejužitečnějších extensions napsaných pro GIMP. Obsahuje interpretr jazyka scheme (SIOD), ze kterého lze volat jednotlivé funkce v Procedural databázi. Umožňuje psát scripty pro různé komplikovanější akce. Tyto scripty se potom můžou tvářit jako běžné pluginy. Existuje například velké množství scriptů generujících efektně vypadající nadpisy na stránky - zvolíte si nápis, font, barvu a script se postará o zbytek.

Na WWW stránkách GIMPu je většina těchto scriptů zpřístupněna v docela vydařené online verzi pod jménem Net-fu.

Domácí stránku GIMPu najdete na http://www.gimp.org, vývojovou verzi a GTK+ na ftp://ftp.gimp.org.


Předchozí Následující Obsah

Dotazy a připomínky ohledně stránky posílejte na hubicka@paru.cas.cz