petak, 19 aprila, 2024
Sam svoj majstor

Foto uređivanje i grafički dizajn na Linuksu (4. deo): Inkscape

Vektorska grafika: Inkscape

Autori: Zlatan Vasović, Dejan Maglov

U 2. i 3. nastavku smo govorili o rasterskoj grafici, fotografiji, foto-obradi Gimp-u i Darktable-u. Sada otvaramo novu oblast grafike – vektorska grafika i Inkscape.

Vektorska grafika

Rasterska grafika definiše svaku tačku slike, dok se vektorska grafika, nasuprot tome, oslanja na analitičku geometriju i stvara slike pomoću geometrijskih primitiva. Geometrijski primitivi u analitičkoj geometriji su prave, duži, lukovi, krugovi, pravilni poligoni (kvadrat, jednakostranični trougao…), elementarni oblici (lopta, cilindar, kupa, kvadar…). Svi ostali oblici dobijaju se kombinacijom ovih primitiva. Ovakav pristup grafici omogućava da se na slici definišu samo vrste primitiva i čvorne tačke koje definišu taj primitiv. Ove ključne tačke nisu definisane apsolutnim nego relativnim koordinatama u odnosu na prvobitnu veličinu slike. Sve ostale tačke između čvornih se dobijaju primenom odgovarajuće matematičke formule koja opisuje zadati primitiv.

Ovakav pristup slici omogućava nezavisnost slike u odnosu na format slike. Slika će imati jednak kvalitet, ma koliko je povećavali. Kod umanjenja, ograničeni smo minimalnim brojem piksela koji još uvek zadržavaju zamišljeni oblik. Osim toga, kod manjih grafika znatno se smanjuje veličina izlazne datoteke jer ima mnogo manje tačaka koje treba definisati.

Smanjivanje izlazne datoteke nije primarni cilj vektorske grafike. Neke slike su toliko komplikovane i sa velikim brojem primitiva da ta izlazna datoteka biva i veća od iste slike u nekom od formata rasterske grafike. Ono što je prevashodna prednost vektorske grafike, jeste mogućnost animacije kao i pravljenja 3D modela.

3D grafika, animacija i mešanje sa rasterskom grafikom

Mogućnost lake izmene slike pomoću čvorova omogućava pravljenje serije slika koje su dobre za animaciju. Matematika i savremene 3D grafičke kartice omogućavaju vektorskoj grafici crtanje 3D modela. Čvorovi kod 3D grafike imaju definisane sve 3 koordinate. Definisanje položaja kamere i svetla omogućava dizajneru da pravi i fotorealistične slike.

Sama vektoska grafika nije fotorealistična u potpunosti ali zato vektorski programi imaju mogućnost kombinovanja sa rasterskom grafikom. Primitivi mogu da se popunjavaju rasterom (pattern – šara, mustra) ili materijalom. Pattern uglavnom zadržava svoje osobine i izgled. Materijal donosi svoje osobine ali se menja izgled u zavisnosti od postavljenih kamera i svetla u samom programu, što mu daje fotorealističnost. Savremeni crtani filmovi koriste ovu tehnologiju.

World Wide Web Consortium (W3C) je postavio standard za vektorsku grafiku – Scalable Vector Graphics (SVG). Baziran je na XML-u. Uvek možete praviti i uređivati SVG datoteke uz pomoć tekst editora ali danas više preovladavaju grafički editori (na primer Inkscape). Vektori u ovom formatu imaju uglavnom malo zauzeće na disku ali nekad može biti i ogromno, pa se zato koristi neka od kompresovanih verzija (na primer SVGZ). Većina pregledača danas ima podršku za SVG ali potpuna implementacija standarda je retka. Može se koristiti i za animiranu grafiku. Napravljena je i verzija SVG-a za mobilne telefone, nazvana SVGT (SVG Tiny version) i može se koristiti kao pozadina mobilnog telefona. Zanimljivo je da je W3C napravio i jedan od standarda za rastersku grafiku – PNG.

Šteta je što za avatar nekog online naloga ne možete staviti SVG (ako izuzmemo OpenClipArt.org). Ovo je ipak, razumno jer se putem SVG-a kroz XML kod može ubaciti maliciozni program.

Slobodni programi za vektorsku grafiku

Vektorska grafika se upotrebljava u raznim oblastima rada. U inženjerstvu je zastupljena u CAD/CAM programima za precizno crtanje u 2D i 3D. O jednom takvom programu smo pisali još u broju #1 LiBRE! časopisa, LibreCAD.

Od programa za umetničku 2D grafiku najpoznatiji je Inkscape.

Oblast umetničke 3D vektorske grafike pokriva Xara Xtreme.

Vrhunac 3D vektorske grafike od slobodnih programa je Blender koji se istovremeno koristi i za profesionalnu animaciju.

Inkscape

Inkscape je program za vektorsko crtanje 2D (ilustrovanje). Može se predstaviti kao Adobe Illustrator (ponekad i CorelDRAW) u svetu slobodnog softvera.

Prva verzija je bila 0.35 objavljena 2. novembra 2003. kada se Inkscape pojavio kao fork Sodipodi-ja (https://sourceforge.net/projects/sodipodi/). Najnovija verzija 0.48.3.1 objavljena je 19.2.2012. Zanimljivo je da Inkscape uprkos promenama ne „preskače“ velike „brojeve“ prilikom objavljivanja verzija (i dalje je u seriji 0.x).

Kao podrazumevani format koristi Inkscape SVG. Važno je znati da treba prvo sačuvati crtež u Inkscape SVG-u da biste mogli kasnije da ga menjate, pa onda po potrebi raditi export u druge formate. U čemu je razlika između običnog i Inkscape SVG-a? Inkscape SVG podržava sve opcije Inkscape-a i samim tim je bolji za rad. Dakle, sve novo što bude dodato u Inkscape , biće „propraćeno“ dopunom Inkscape SVG-a.

Šta sve možete uraditi Inkscape-om? Pored klasičnih opcija, u koje spadaju crtanje kvadrata, poligona, linija i sličnih objekata, Inkscape može da odradi specijalne operacije nad objektima koje karakterišu većinu drugih grafičkih vektorskih programa (udruživanje, deljenje, oduzimanje, razlika…). Možemo probati XML editor (Ctrl + Shift + X) i import iz Open Clip Art biblioteke crteža (File > Import From Open Clip Art Library). Objekte možemo pretvarati u mustru (pattern) i suprotno (Object > Pattern).

Inkscape je dostupan za GNU/Linux distribucije, Windows i Mac OSX.

Preuzimanje:
[1] SourceForge.net (tar.gz i tar.bz2) – https://sourceforge.net/projects/inkscape/files/inkscape/
[2] Ubuntu Software Center (deb) – https://apps.ubuntu.com/cat/applications/inkscape/
[3] Inkscape Stable (PPA) – https://launchpad.net/~inkscape.dev/+archive/stable

Korisni linkovi:
[1] http://inkscape.org/
[2] http://www.inkscapeforum.com/
[3] http://openclipart.org/
[4] http://wiki.inkscape.org/wiki/index.php/Frequently_asked_questions
[5] http://screencasters.heathenx.org/