Generic Graphic Library
![Abbozzo software](http://upload.wikimedia.org/wikipedia/commons/thumb/7/77/Computer_n_screen.svg/44px-Computer_n_screen.svg.png)
GEGL software | |
---|---|
![]() | |
![]() | |
Genere | Computer grafica |
Data prima versione | 2000 |
Ultima versione | 0.4.48 (11 febbraio 2024) |
Sistema operativo | GNU/Linux Microsoft Windows macOS |
Linguaggio | C |
Licenza | GNU GPL v3 e GNU LGPL v3 (licenza libera) |
Sito web | www.gegl.org/ |
Modifica dati su Wikidata · Manuale |
La Generic Graphical Library (indicata con l'acronimo GEGL) è una libreria software, con licenza FOSS per applicazioni di elaborazione digitale delle immagini.
È sviluppata principalmente per GIMP in modo da consentire a quest'ultimo di gestire immagini con profondità di colore superiori a 8 bit, oltre che abilitarne le funzioni di modifica non distruttiva.
Essa è stata parzialmente implementata in GIMP 2.6,[1] ed è sufficientemente generica da poter essere usata anche da altri software.
Storia
GEGL fu concepita in origine come il rimpiazzo del cuore di GIMP nel 2000, mentre nel 2006 le API esterne divennero sufficientemente stabili e complete per poterlo rimpiazzare. Il 20 dicembre 2007, la libreria fu aggiunta alla versione di sviluppo di GIMP. Alcuni degli strumenti di GIMP sono già stati convertiti alle operazioni GEGL; quasi tutti gli strumenti di modifica dei colori, luminosità o contrasto sono stati convertiti.
Struttura
GEGL è stata concepita su modello dei grafi aciclici diretti (DAG), dove ogni nodo rappresenta un operatore immagine (chiamati "operatori" o "op"). L'elaborazione viene svolta su modello a richiesta e perciò eseguita solo quando è esplicitamente richiesto.
Usando un modello a richiesta consente di avere delle caratteristiche interessanti come anteprime molto veloci durante la modifica e, una volta che l'utente ha finito di eseguire i cambiamenti, GEGL ripeterà le stesse operazioni a piena risoluzione per il risultato immagine definitivo come elaborazione in background (come xRes).
Operatori
Un operatore (op) è un nodo all'interno di un grafo GEGL responsabile di un'azione; gli op possono essere semplici, come "add" (con due argomenti in ingresso) o "premultiply by alpha" (con un argomento in ingresso) oppure più complesse, come una conversione di spazio di colore.
Babl
babl è una libreria di supporto a GEGL che fornisce un metodo generico per gestire le conversioni di spazi di colore;[2]
Il calcolo viene effettuato astraendo le operazioni di colore fondamentali facendo in modo che GEGL non se ne faccia carico. Attraverso babl, tramite il supporto opzionale a istruzioni di tipo SIMD, GEGL fornisce un potente e ottimizzato insieme di funzioni di elaborazione di dati colore arbitrari. Ciò permette alle applicazioni che la usano di supportare efficientemente un'ampia gamma di spazi di colore (da quelli base a 8 bit RGB ai più complessi CMYK in virgola mobile) con un minimo di codice di programmazione aggiuntivo nell'applicazione.
OpenRaster
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/87/Magnifying_glass_icon_mgx2.svg/18px-Magnifying_glass_icon_mgx2.svg.png)
OpenRaster è un formato di file XML usato per il salvataggio di grafica raster. Lo sviluppatore GEGL Øyvind Kolås ha aiutato nella specifica del formato OpenRaster facendo in modo che esso possa essere in grado di salvare un grafo GEGL.
Note
- ^ (EN) GIMP 2.6 release notes, su gimp.org. URL consultato il 18 marzo 2017.
- ^ (EN) babl, su gegl.org. URL consultato il 18 marzo 2017.
Voci correlate
Altri progetti
Altri progetti
- Wikimedia Commons
Wikimedia Commons contiene immagini o altri file su Generic Graphic Library
Collegamenti esterni
- (EN) Sito ufficiale, su gegl.org.
- Generic Graphic Library, su packages.debian.org.
- Repository sorgenti di Generic Graphic Library, su gitlab.gnome.org.
- (EN) Generic Graphic Library, su Free Software Directory.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/14/Munari_fork.png/25px-Munari_fork.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/25px-Nuvola_apps_emacs.svg.png)