Inkscape

Inkscape on vaba tarkvara vektorgraafika töötlemiseks. Tarkvara arenduseesmärkideks on luua võimas graafikarakendus, mis oleks täielikult ühilduv XMLi, SVG ja CSSi standarditega.
Inkscape toetab mitmeid platvorme ja jookseb nii Linuxi, Mac OS Xi kui Windowsi keskkondades. Inkscape ei toeta SVG standardit täielikult: põhilisteks puudusteks võib pidada animatsiooni ja SVG kirjatüüpide toe puudumise. Viimase arendusele on siiski versioonis 0.47 alus pandud.
Ajalugu.
Inkscape harunes Lauris Kaplinski Sodipodi programmist. Sodipodi oli omakorda harunenud Ralph Levieni programmist Gill (Gnome Illustration Application).
Inkscape'i loonud varasemad Sodipodi autorid (Ted Gould, Bryce Harrington, Nathan Hurst, ja MenTaLguY) põhjendasid sammu põhimõtteliste vastuoludega projekti eesmärkide osas. Inkscape soovis keskenduda SVG standardi täielikule toetamisele, samas kui Sodipodi soovis luua üldotstarbelist vektorgraafikaprogrammi, SVG standardit vajadusel ignoreerides.
Pärast haru loomist on liigutud C keelelt C++ peale ning seetõttu vahetatud ka kasutajaliidese teeke; programmi kasutajaliides on saanud uusi funktsioone. Programmi SVG tugi on paranenud, kuid standardi implementatsioon ei ole veel täielik.
Keskse juhtimise asemel püüdleb projekti kogukond egalitaristliku juhtimise suunas, kus autoriteedi määravad arendaja individuaalsed võimed ja aktiivne osavõtt. Seetõttu on aktiivsetel arendajatel projekti lähtekoodidele täielik ligipääs ja püütakse osaleda ka vaba tarkvara kogukonna projektides (tihti on selleks ühis- või "spin-off" projektid, nagu Open Art Library). Kuigi projekti loojatel on praegu suur sõnaõigus, täidavad tähtsaid kohuseid ka paljud uustulnukad.
Pärast Xara otsust litsentsida Xara Xtreme GPL-iga, avaldas firma soovi leida Inkscape'iga koostöövõimalusi koodi jagamiseks, koostöö koordineerimiseks ja saadaolevast kommertstarkvarast kvaliteedilt möödumiseks.
Alates aastast 2005 on Inkscape osalenud Google Summer of Code'i projektis.
Programmi veahaldus kolis 2007. aasta novembris Sourceforge'i alt Launchpadi alla.
Funktsionaalsus.
Objektide loomine.
Objektide põhitüübid on:
Objektide töötlemine.
Objektidele saab rakendada affiingeomeetrilisi transformatsioone (liigutamine, pööramine, skaleerimine ja kallutamine). Teisenduste parameetreid on võimalik sisestada ka dialoogiaknas. Transformatsioonid võivad abi- ja alusjoonte, nurkade ja teiste objektidega arvestada (tõmme). Abi- ja alusjooned ja nendega arvestamine salvestub koos dokumendiga. Alternatiivina tõmbele võib kasutada joondamis- ja jagamisdialoogi, mille abil võib valitud objektid mingis suunas joondada või jaotada nad laiali võrdselt, juhuslikult või nii, et nad üksteist ei kata.
Objekte on võimalik suvaliselt grupeerida. Grupid käituvad paljuski nagu "atomaarsed" objektid ning neid on võimalik tervikuna töödelda – näiteks on neid võimalik kloonida või värvida. Gruppe saab muuta ka ilma neid lõhkumata. Objektide järjestust on võimalik organiseerida kihtide abil ning ka neid ükshaaval üles- ja allapoole liigutades. Kihte on võimalik töö ajaks lukustada ja peita.
Olemas on spetsiaalne kloonmustri tööriist erineva sümmeetriaga mustrite loomiseks.
Objektide kopeerimine ja asetamine on võimalik, seda kohati ka teiste programmide vahel (ver. 0.74 alates).
Objektide kujundus.
Objektide väljanägemise määravad järgmised parameetrid:
Objekte saab muuta ka maskide ja lõikejoonte abil, mille võivad moodustada nii eraldi objektid kui nende grupid.
Objektide kujundus on neist eraldiseisev, lõikepuhvrist on võimalik puhvris oleva objekti kujundust asetada valitud objektile.
Töö joontega.
Inkscape'il on ulatuslik tööriistavalik joonte kui vektorkujutiste põhikomponentide muutmiseks. Sõlmpunktide redaktor võimaldab muuta joont ühe punkti tasemel ja võimaldab Bezier' kõveraid manipulaatorite ja kontrollpunktide abil muuta. Joonesegmente saab muuta neid hiirega tõmmates ning klaviatuuri kiirklahvide abil on neid võimalik ka skaleerida ja pöörata. Joontele saab vabalt valitud kohtadesse lisada punkte ning efekti abil saab seda teha määratud vahedega. Punktide kustutamisel muudetakse ülejäänud punktide manipulaatoreid nii, et algne joon muutuks võimalikult vähe.
Joonte täpsemaks muutmiseks on olemas tööriist nende lükkamiseks, kasvatamiseks, kahandamiseks, kokkutõmbeks, eemaletõukeks või käänulisemaks muutmiseks. Selle tööriista kasutamisel tekivad ja kaovad uued punktid vajadusel ise, mis võimaldab tööriista kasutada ka joone eelneva ettevalmistuseta.
Muud võimalikud kõrgtaseme tööriistad on näiteks infokadudega kujundite suurendamine või vähendamine, või siis kujundile automaatselt suurema ümberjoone või sisejoone loomine. Sellist piirjoont saab panna ka sõltuma algsest kujundist nii, et originaali muutmine kajastub ka ümbritsevas piirjoones. Inkscape võimaldab kujunditeks muuta spiraale, teksti, joont. Kujundeid saab lihtsustada ja nendega sooritada Boole'i operatsioone nagu näiteks liitmine, vahe, ühisosa või täiend.
Uuemates versioonides on võimalik kujunditele määrata ka eriefekte, mis töötlevad kujundid näiteks hammasratasteks või painutavad kujundit mõnd joont järgima.
Tekstitugi.
Inkscape toetab teksti redigeerimist mitmerealise tekstina (SVG element &lt;text&gt;) ja voogava tekstina (ebastandardne element &lt;flowRoot&gt;, mida püüti kaasata SVG versiooni 1.2). Alates versioonist 0.47 ei näita ülejäänud programmid voogavat teksti, sest alternatiivide jaoks puudub lülitamiselement ja ülejäänud programmid seda ei toeta. SVG 1.2 Tiny elementi &lt;textArea&gt; ei toetata. Kogu teksti saab redigeerida otse tööpinnal. Teksti redigeerimiseks kasutatakse Pango teeki, mis võimaldab Inkscape'il toetada ka keerulisi kirjaviise, näiteks Heebrea, Araabia, Tai, Tiibeti jne. Tähtevahede tähthaaval korrigeerimine ja sõrendamine toimub klaviatuuri kiirklahvide abil. Teksti saab panna järgima joont, sealjuures jäävad mõlemad muudetavaks.
Pildi esitamine.
Erinevalt paljudest teistest GTK+ rakendustest kasutab Inkscape oma graafikaesitusteeki libnr, mis suudab suurendada 25600%, muutumata sealjuures nurgeliseks. Graafikaelemente suudetakse joonistada ka transformeerimiste käigus. Keeruliste kujutiste töötlemise kiirendamiseks on olemas ka režiim ainult piirjoontega töötamiseks. Inkscape kasutab alates versioonist 0.46 piirjoonte joonistamiseks Cairo teeki.
Liides ja kasutusmugavus.
Üks Inkscape'i projekti prioriteetidest on kasutajaliidese järjepidevus ja kasutatavus. See tähendab, et järgitakse GNOME'i kasutajaliidese juhiseid, pakutakse hulgaliselt klaviatuuri kiirklahve ja lubatakse objekte muuta nii, et tagasiside muutuste kohta on näha kohe.
Tööpinda katvate dialoogiakende hulk on viidud miinimumini, võimaldades sama funktsionaalsust kasutada klaviatuurilt või redigeerimisakna kõrvale paigutuvatelt paneelidelt. Tööriba pakub valitud tööriista jaoks alati seostuvaid valikuid.
Kõik transformatsioonid (mitte ainult liigutamine, vaid ka skaleerimine ja pööramine) on teostuvad klaviatuurilt, omades järjepidevust ka mõjutatavate klahvide osas (Alt muudab 1 ekraanipiksli võrra, Shift korrutab muudatuse hulga 10ga jne); need nupud töötavad ka sõlmpunktide redaktori ja objektivalikuprogrammiga. Sagedaste tegevuste (nagu muutmised, suurendamine, objektide järjekord) kiirklahvid on kõik ühenupulised.
Inkscape pakub nuppude, juhikute, käskude klahvide ja tööpinnal olevate juhtelementide kohal hiirt hoides abitekste nii hiire juures kui ka olekuribal. Hiire ja klaviatuuri jaoks on olemas täielik ülevaade (HTML- ja SVG-vormingus) ning samuti on programmil kaasas mitmed interaktiivsed SVG tutvustusfailid.
Inkscape'i eellase Sodipodi liides põhines CorelDraw ja GIMPi liidestel. Inkcape'i liidest on mõjutanud Xara Xtreme.