Inkscape, creare grafica vettoriale

Inkscape è senza dubbio uno dei migliori software gratuiti di grafica vettoriale, che offre caratteristiche simili a quelle dei suoi concorrenti commerciali come Illustrator o Corel Draw.

INKSCAPE Tutte le piattaforme

Crea e manipola i tuoi file SVG per realizzare illustrazioni, diagrammi, loghi e altre immagini complesse nel modo più semplice possibile, grazie a un’ergonomia pensata per potere realizzare tutto molto semplicemente.

Inkscape è multi-piattaforma e quindi è disponibile per Windows, Mac OS, Linux e Freebsd, in più di 90 lingue, per le architetture a 32 e 64 bit, con una versione portatile molto leggera al bisogno e il supporto tecnico di un’intera comunità molto attiva, e tutto gratuitamente, cosa si può dire di più?

Il formato file principale di Inkscape è il formato SVG (Scalable Vector Graphics), sebbene Inkscape possa importare ed esportare molti altri formati di file.

Per spiegarne il funzionamento, bisogna capire che in realtà l’SVG si basa su una serie di grafici vettoriali in 2D che possono interagire ed essere animati.

Tutti questi dati sono definiti in un file XML (un file di testo!) che permette di cercare, indicizzare, cifrare e comprimere questi dati. Inoltre, in quanto file XML, le immagini SVG possono essere create e modificate tramite un qualsiasi editor di testo.

Tutti i browser moderni supportano il rendering SVG: Google Chrome, Mozilla Firefox, Internet Explorer, Opera, Safari e Microsoft Edge.
Se sullo schermo il rendering dei file SVG è perfetto, è anche l’ideale per la stampa e per l’animazione, cosa che lo rende un formato di file molto completo e allo stesso tempo molto complesso, per ottenere incredibili risultati professionali, per esempio nei settori del taglio laser.

Taglio laser con Inkscape

Il formato SVG è diventato naturalmente uno standard «aperto», sviluppato nel 1999 dal W3C (World Wide Web Consortium) e imposto come formato imprescindibile nel settore delle immagini vettoriali.

Capire cos’è un’immagine vettoriale

A differenza delle immagini JPEG, GIF e BMP, i grafici vettoriali non si basano su una griglia di pixel. I grafici vettoriali, invece, sono costituiti da «tracciati», definiti da un punto di partenza e da un punto di arrivo e su cui si trovano altri punti, curve e angoli.

Un tracciato può essere una linea, un quadrato, un triangolo o una figura curva. Questi tracciati possono essere utilizzati per creare disegni molto semplici o diagrammi molto più complessi. I tracciati possono anche essere utilizzati per definire le caratteristiche di alcuni font di scrittura.

Poiché un’immagine vettoriale può essere ingrandita senza alcuna perdita di qualità, non essendo progettata a partire da un numero specifico di punti.

Se tenti di ingrandire allo stesso modo un’immagine in formato JPEG o BMP (immagini «raster»), ti ritroverai con un effetto di «pixelizzazione», mentre in un’immagine vettoriale i bordi di tutti gli oggetti contenuti nell’immagine stessa rimarranno «lisci» e puliti, senza pixel.

Si capisce facilmente, dunque, perché i grafici vettoriali sono perfetti per esempio per la creazione di loghi, che devono essere piccoli per i biglietti da visita, ma altresì sufficientemente precisi per creare enormi striscioni pubblicitari.

Se il vantaggio «visivo» è sorprendente, la grafica vettoriale è presente anche in un sacco di animazioni Flash, poiché anche in questo caso il formato permette di ingrandire il rendering finale, senza perdere qualità e occupando molto meno spazio rispetto all’uso di una serie di immagini bitmap.

Va osservato che ci sono altri formati di grafica vettoriali, come EPS, AI e DRW.

Vettorializzazione per una perfetta qualità dell’immagine

La vettorializzazione consiste nella conversione di immagini 2D in una rappresentazione vettoriale in 2D dell’immagine.

Spiegato in questo modo non è facile da capire, ma quello che bisogna ricordare è che purtroppo la vettorializzazione non è così semplice come cercare di riconoscere ed estrarre un modello tridimensionale (3D) da un’immagine 2D.

Per molte applicazioni, la vettorializzazione non include il riconoscimento ottico dei caratteri (OCR per Optical Character Recognition), il che significa che i caratteri sono trattati esattamente come linee, curve od oggetti riempiti, enza attribuire loro altri valori.

Per questo la vettorializzazione permette la conservazione del rendering dei caratteri senza perdere qualità visiva, se ci fosse bisogno di «zoomare», il che è perfettamente evidente nell’esempio di cui sopra.

La qualità visiva delle immagini vettoriali è indiscutibile e permette di gestire la trasparenza

Il file originale di una vettorializzazione può essere un’immagine, ma un’immagine può essere essa stessa molte cose, come un disegno su carta, una foto o uno dei tanti file di immagini tipo «raster».

Inkscape permette di effettuare la conversione «raster-to-vector» accettando formati di file come TIFF, BMP o PNG. In alcuni casi specifici la vettorializzazione consente di tentare il recupero dei dati persi nelle immagini vettoriali.

Inkscape e la pubblicazione semplice e gratuita di immagini vettoriali

Inkscape permette, quindi, di elaborare un rendering di queste forme primitive vettoriali (che sono i rettangoli, le ellissi, i poligoni, gli archi, le spirali, le stelle e le scatole 3D di cui parlavamo sopra) e di testi.

Questi oggetti possono essere riempiti, per esempio, con colori a tinta unita o sfumati, così come i loro contorni possono essere «levigati», mentre si regola la trasparenza.

Inkscape è anche in grado di creare grafici vettoriali a partire da fotografie o da altre fonti di questo tipo. Le forme primitive create dalla vettorializzazione potranno in seguito essere spostate, subire delle rotazioni o anche dei ridimensionamenti.

Un’interfaccia utente pulita, Inkscape piacerà sia su Windows sia Mac o Linux

La storia di un bellissimo progetto open source chiamato Inkscape

Inkscape è ancora relativamente nuovo in quanto la sua storia è iniziata nel 2003, quando era solo il fork di un software di editing di grafica vettoriale, gratuito e open source, denominato Sodipodi.

È proprio questo aspetto open source che ha permesso a Sodipodi di diventare un fork di The GIMP, il famosissimo software di editing grafico open source in competizione con il gigante Adobe Photoshop.

Un software open source rende disponibile al pubblico il suo codice sorgente, il quale può essere copiato e modificato per creare un nuovo software chiamato fork. Quindi, nel giro di pochi anni, potrebbe esserci un fork Inkscape a integrare le funzionalità avanzate di The GIMP, è il lato magico del mondo del software “libero” (e gratuito!).

Se Sodipodi ha usato bene il formato nativo di file SVG, in origine però non era stato progettato per un’implementazione completa dello standard SVG.

È da questa divergenza di opinioni sugli obiettivi che Sodipodi avrebbe dovuto realizzare che quattro sviluppatori (Ted Gould, Bryce Harrigton, Nathan Hurst e “MenTaLguY”) hanno deciso di costruire un fork, concentrandosi principalmente sull’implementazione dello standard SVG, pur rimanendo aperto a contributi esterni.

Gli sviluppatori di Inkscape hanno vinto la loro scommessa, cambiando drasticamente l’interfaccia utente, ma anche passando dal linguaggio C a quello C++, adottando GTK+ (in precedenza “GIMP Toolkit”) con gtkmm (per una GUI in C++).

Al suo rilascio l’implementazione dello standard SVG è stata molto apprezzata dal pubblico, sebbene ancora incompleta, il che ha comportato l’arresto dello sviluppo di Sodipodi.

Oggi la community di Inkscape è più attiva che mai. Alla fine del 2007 il codice sorgente di Inkscape era ancora ospitato da SourceForge. È stato quindi spostato su Lauchpad, quindi su GitLab, dove è ancora disponibile dal 2017.

Inkscape partecipa anche al programma Google Summer of Code che premia studenti di tutto il mondo di età superiore ai 18 anni e che, nell’ambito di un progetto universitario, codificherebbero un software gratuito e open source durante l’estate.

Xara Xtreme è un altro software di disegno vettoriale sviluppato da una piccola azienda britannica, rinomato per la sua gestione avanzata dei gradienti e della trasparenza alfa.

In seguito all’annuncio dell’apertura del codice sorgente di Xara Xtreme potrebbe benissimo realizzarsi una partnership tra Inkscape e Xara, al fine di raggiungere un livello di qualità superiore rispetto a quello dei software proprietari.

Questa alleanza per una migliore condivisione delle conoscenze in futuro potrebbe portare a Inkscape (ma anche a Xara Xtreme) molti miglioramenti e anche aggiungere delle funzionalità, come una gestione ancora più efficiente e ottimizzata della memoria della CPU.

Inkscape per Ubuntu in esecuzione su distribuzione Debian Linux

Inkscape in pratica: le sue funzionalità

Creazione di oggetti

• Disegno: disegno di linee a mano libera, disegno di curve di Bézier (punto a punto o a mano libera) e segmenti di linea, tracciato di linee calligrafiche con la penna (supporto dell’angolo e pressione dalle tavolette grafiche)
• Forme: rettangoli, quadrati (angoli arrotondati configurabili), ellissi, cerchi e archi, stelle e poligoni, spirali
• Testo (allineamento, direzione, font, giustificazione, multilinea)
• Cloni (oggetti copiati con modifica dinamica)
• Collegamento, importazione, vettorializzazione di immagini raster e creazione mediante riempimento tra altri percorsi
Manipolazione di oggetti
• Trasformazioni perfezionate in modo interattivo o mediante specificazione di valori numerici (traslazione, simmetria, ridimensionamento, rotazione, deformazione)
• Sistema di livello con ordinamento per sovrapposizione di livelli, gruppi e oggetti (z-order)
• Raggruppamento gerarchico di oggetti e gruppi
• Allineamento e distribuzione di oggetti, disposti su una griglia, dispersione di oggetti, griglia e guide magnetiche

Riempimento e contorni

• Selettore colore (RGB, TLS, CMYK, ruota)
• Strumento contagocce colori
• Copia/incolla lo stile degli oggetti
• Riempimento con aree colorate, gradazioni, trame e motivi, con supporto del canale alfa
• Modifica dei gradienti sulla tela con maniglie di controllo, tramite un editor dei gradienti (lineari e radiali)
• Bordi tratteggiati e “marcatori” (oggetti SVG che si attaccano ai nodi e alle estremità delle curve).

Operazioni sul tracciato

• Modifica dei nodi: spostamento, maniglie di controllo delle curve di Bézier, allineamento e distribuzione dei nodi, ridimensionamento e rotazione di gruppi di nodi
• Convertire oggetti di testo, forme e bordi in tracciati
• Operazioni booleane (unione, intersezione, differenza, esclusione, divisione)
• Semplificazione, interruzione e frattalizzazione dei tracciati
• Creazione di linee esterne con offset che cambiano dinamicamente in base alle forme da cui derivano

Supporto per il testo

• Testo multilinea (SVG 1.0/1.1) e non standard per SVG 1.2
• Regolazione della spaziatura tra linee e lettere
• Modifica dello stile, dei colori, della dimensione dei personaggi
• Testo allegato a una curva per seguirne il percorso
• Uso della libreria Pango
• Uso di tutti i caratteri vettoriali installati sul sistema

SVG 1.2 Tiny non è supportato. Tutti i testi sono direttamente modificabili sulla tela. Il rendering del testo si basa sulla libreria Pango che consente a Inkscape di supportare diverse forme di scrittura complessa come l’ebraico, l’arabo, il tailandese o persino il tibetano, ma anche di regolare la spaziatura delle lettere con glifi utilizzando le scorciatoie da tastiera. Inkscape supporta anche la conversione dei caratteri in corsivo e grassetto, così come indici ed esponenti, ma al momento non è implementata la sottolineatura.

Rendering

• Visualizzazione e rendering con antialiasing
• Trasparenza alfa per la visualizzazione e l’esportazione in formato PNG
• Rendering di oggetti durante le loro trasformazioni
Diversamente da altri software, da molto tempo Inkscape ha usato la propria libreria di rendering chiamata libnr per creare la grafica vettoriale. Dalla versione 0.91, invece, per il rendering grafico Inkscape utilizza Cairo che ha portato all’applicazione un notevole guadagno in termini di velocità.

Altre funzionalità

• Strumento di connessione oggetti per diagrammi
• Editor XML integrato: live view e modifica dell’albero del documento SVG corrente
• Importazione di file bitmap e vettoriali di diversi formati
• Vettorializzazione di immagini bitmap con POTrace
• Esportazione nei formati PNG, PostScript, DXF e ODG
• Importazione ed esportazione in formato PDF
• Importazione ed esportazione in formato EMF (Enhanced MetaFile) o Windows Metafile (WMF) per aprire e modificare clipart da MS Office o inserire disegni vettoriali creati in Inkscape in MS Office
• Opzioni della riga di comando per esportare, convertire e scansionare file SVG
• Supporto per metadati RDF (autore, data, licenza, ecc.)
• Supporto per plugin in linguaggio Python (funzioni di frattali, perturbazione, interpolazione curve)
• Supporto per fogli di stile in cascata (CSS)
• Inserimento di simboli matematici e lettere greche

Performance

Nelle preferenze di rendering è stata aggiunta l’opzione “Moltiplicatore di rendering”. Ciò consente di regolare le dimensioni delle tessere (le tessere sono porzioni di un’area della tela che saranno calcolate in 1 passaggio).

Il rendering simultaneo di una vasta area con contenuti complessi richiede una maggiore potenza di elaborazione, ma i computer con configurazioni potenti ormai sono in grado di svolgere questo compito senza preoccupazioni.

Per esempio, ridurre il valore della larghezza su computer deboli può aumentare la velocità di zoom. Il nuovo valore predefinito è dividere lo schermo in 4 riquadri che saranno visualizzati indipendentemente l’uno dall’altro, se non si utilizza uno schermo ad alta risoluzione (che richiede più riquadri).

Il primo avvio in Windows di Inkscape avrebbe potuto essere più lungo, poiché era necessario creare un indice di tutti i font disponibili sul sistema, ma ora è molto più veloce dalla versione 2.13.0 di fontconfig.

Formato del file

Il formato nativo di Inkscape era il formato SVG nella sua versione 1.1, il che significa che è in grado di creare e modificare con tutte le possibilità di questo formato ma anche con i suoi vincoli.

Tutti gli altri formati devono anche essere importati (per essere convertiti in SVG) o esportati (convertiti da SVG). Inkscape implementa lo standard CSS oltre a SVG e consente al supporto multilingue di essere in grado di codificare script complessi in lingue diverse dal C ++.

Inkscape è in grado di importare nativamente i seguenti formati:

Vettoriale:
• Adobe Illustrator Artwork (AI)
• CorelDRAW (CDR)
• Microsoft Visio Drawing (VSD)
• Portable Document Format (PDF)
• SVG Zip (SVGZ)
Raster:
• Joint Photographic Experts Group (JPEG)
• Portable Network Graphics (PNG)
• Graphics Interchange Format (GIF)
• Bitmap image file (BMP)
 
Con l’aggiunta di plugin, Inkscape sarà in grado di importare i formati:

• Computer Graphics Metafile (CGM) (con UniConvertor)
• Dia Software (DIA)
• Encapsulated PostScript (EPS) con Ghostscript
• PostScript (PS) con Ghostscript
• sK1 (SK1) (con UniConvertor)
• Sketch
• Xfig Software (FIG)

Per le esportazioni, Inkscape può utilizzare i formati:

• Computer Graphics Metafile (CGM) (con UniConvertor)
• Dia Software (DIA)
• Encapsulated PostScript (EPS) con Ghostscript
• PostScript (PS) con Ghostscript
• sK1 (SK1) (con UniConvertor)
• Sketch
• Xfig Software (FIG)

Altre possibilità con Inkscape

• Approfitta di un editor XML per la manipolazione diretta delle tue strutture XML SVG
• Modifica file RDF (Resource Description Framework), metadati basati sul modello World Wide Web Consortium (W3C)
• Un’interfaccia per lavorare con le righe di comando, che consente di utilizzare tutte le funzioni di conversione e di beneficiare di una GUI completa per gli script
• I nuovi plugin aggiungono sempre nuovi effetti e altre funzionalità
• Progetta diagrammi matematici usando LaTeX
• Per uso esterno è disponibile lib2Geom. 2Geom è una libreria (in senso informatico), sviluppata originariamente per Inkscape. Questa libreria è ora utilizzabile da qualsiasi applicazione che lo consente.

Interfaccia e utilizzo

Una delle principali priorità di Inkscape è quella di mantenere l’ergonomia di facilità d’uso. Ciò presuppone uno sforzo continuo per seguire le Linee Guida dell’interfaccia umana di GNOME, per rimanere universali in termini di utilizzo della tastiera e per rispettare gli standard di editing grafico.

Inkscape si è evoluto enormemente dalla sua prima versione in termini di ergonomia e interfaccia, essendo sempre più semplice e pratico da usare.

È stato ridotto il numero di finestre di dialogo mobili, ma tutte le funzioni sono ancora disponibili tramite le scorciatoie da tastiera o dalle barre che è possibile inserire nei “dock” (un po’ come i widget) nella finestra di modifica. La barra degli strumenti principale, sempre disponibile nella parte superiore, consente di ottenere rapidamente gli strumenti principali.

Tutte le trasformazioni vettoriali, il ridimensionamento, la rappresentazione in scala, il posizionamento e la rotazione, hanno le proprie scorciatoie da tastiera con combinazioni logiche (Alt regola lo zoom di 1 pixel, Shift fa la stessa cosa ma 10 volte di più, quindi con un passaggio di 10 pixel, ecc.).

Queste combinazioni funzionano come “nodi” proprio come gli oggetti trovati nello strumento di selezione. Le normali operazioni (come trasformazioni, zoom …) hanno sempre combinazioni precise, ma molto logiche e soprattutto pratiche.

L’interfaccia di Inkscape è fortemente influenzata da quella della sua controparte a pagamento Xara Xtreme.

Inkscape offre anche degli aiuti sotto forma di nuvoletta al passaggio del mouse per ricevere suggerimenti per ciascun pulsante, controllo, comando, gestione dei tasti e dell’area di disegno

Questi suggerimenti sono dinamici per offrirti consigli vari: così, durante le modifiche, un singolo oggetto può darti fino a quattro diversi suggerimenti.

Il consiglio viene scelto in base a due dati: lo strumento utilizzato e il tipo di oggetto/nodo/manipolazione su una forma, un collegamento, un percorso, ecc. Ovviamente Inkscape viene fornito con una guida completa alle scorciatoie da tastiera e su come utilizzare al meglio il mouse per trovare suggerimenti e «scorciatoie» (disponibili in HTML e SVG), nonché diversi tutorial interattivi realizzati in SVG.

L’interfaccia di Sodipodi (il predecessore di Inkscape che abbiamo menzionato) era basata su quella di CorelDRAW e GIMP. L’interfaccia di Inkscape è fortemente influenzata da Xara Xtreme.

Inkscape è molto apprezzato dal mondo scientifico grazie al supporto di complessi diagrammi algebrici in nativo

Piattaforme supportate (sistemi operativi)

L’ultima versione di Inkscape che offriamo è disponibile per Ubuntu, OpenSUSE, Microsoft Windows e MacOS. Le versioni di Windows offrono la scelta tra versioni a 32 e 64 bit a seconda dell’hardware.

Inkscape per Mac è generalmente utilizzato su XQuartz (il server MacOS X). È anche assolutamente possibile compilare il toolkit GTK + per usarlo nativamente in Quartz.

Inkscape è disponibile in pacchetti per tutte le principali distribuzioni Linux (come Debian, Ubuntu, Fedora, OpenSUSE) con GTK + versione 2.2 e successive.

Il progetto Wacom è in fase di sviluppo (nuovamente) per consentire il supporto di GTK+ 3 su Tablet.

Esistono grossi problemi con l’aggiornamento a GTK+ 3 durante la migrazione da una versione precedente. Proprio come Windows attualmente non consente il supporto per la libreria GTK+ 3.

Interfaccia semplice ed ergonomica, la potenza di Inkscape sta soprattutto nelle scorciatoie da tastiera con combinazioni “intelligenti”

INKSCAPE Tutte le piattaforme