# OpenRaster

In informatica, OpenRaster (abbreviato/con estensione .ora) è un formato di file per memorizzare immagini. OpenRaster è un formato di file proposto per lo scambio in comune di immagini su più livelli tra gli editor di grafica raster. Esso è inteso come un sostituto per le versioni successive del formato Adobe PSD. OpenRaster è ancora in sviluppo e finora è supportato da alcuni programmi. OpenRaster è un formato di file di grafica aperto, usando una struttura XML, che può contenere più immagini raster come filtri di composizione ed effetti.
Esso è supportato da GEGL, la libreria grafica utilizzata in GIMP; una estensione per aprire e salvare in GIMP (2.6 e 2.7) esiste come Oratools, pubblicata il 2 settembre 2009. L'estensione file predefinita per i file OpenRaster è ".ora".

## Storia

Per molti anni il formato file PSD di Adobe Photoshop fu usato come formato di interscambio tra i vari sistemi operativi e i vari software di grafica che utilizzano le immagini a livelli. Adobe ha permesso questo rilasciando pubblicamente le specifiche del formato. Tuttavia, nel 2006 Adobe ha cambiato questa licenza concedendo l'accesso e l'uso delle specifiche e della documentazione solo "ai fini dello sviluppo interno di programmi in connessione con prodotti Software Adobe e l'incorporazione di porzioni o tutto il codice di esempio nei programmi in sviluppo." In risposta a queste restrizioni, il formato OpenRaster fu proposto per la prima volta al primo Libre Graphics Meeting a Lione, Francia, nella primavera del 2006 ed è tratto dai formati della Open Document Format, criticato in quanto in precedenza troppo complesso.
Il team di lavoro su OpenRaster è formato principalmente da Cyrille Berger, Martin Renold, Jon Nordby, Michael Natterer, Boudewijn Remp, e altri.

## Specifiche

Le seguenti funzioni debbono essere presenti:

### Generali

* documentazione completa liberamente disponibile
* OpenDocument come tipo di formato di file (archivio con più file all'interno)
* estensioni; ma quelle private e non documentate dovrebbero essere escluse, qualsiasi estensione deve essere aggiunta alle specifiche e documentazione del formato di file
* non è richiesto che le applicazioni supportino tutte le caratteristiche del formato di file, ma quando si modifica il file non dovrebbero perdere le informazioni che non possono gestire

### Metadata

* salvataggio dei metadata usando le specifiche (tags) {XMP - Dublin Core - IPTC}
* possibilità di salvataggio tag metadata per ogni livello
* salvataggio dei tag Exif
* tutti i dati testo in formato Unicode (UTF-8 o UTF-16)

### Layers (livelli)

* salvataggio dei livelli multipli
* salvataggio delle coordinate di ciascun layer
* archiviazione delle opzioni (composizione) per ciascun livello
* archiviazione della regolazione dei livelli
* archiviazione degli effetti dei livelli
* gruppi di layers
* informazioni sul colore - profilo, spazio cromatico

### Altro

* archiviazione di tracciati, tracciati di ritaglio, testo sul percorso
* selezioni, maschere
* incorporamento di documenti in formato OpenDocument framework
* supporto undo/storico dei comandi/delle azioni come fa Adobe PSD

### Proposte e estensioni

* Palette
* Fonts incorporati (proposta di estensione)
* Pagine multiple
* Supporto di animazione utilizzando più pagine e un timer come fa AdobePSD

## Le sfide

Un grande problema è che poiché tutte le funzionalità non sono disponibili in tutti i programmi, le immagini non potranno essere visualizzate allo stesso modo in diverse applicazioni, specialmente i livelli di regolazione/filtri. E i "visualizzatori" delle applicazioni come Inkscape o Scribus non avranno alcuna implementazione per tutte quelle caratteristiche.
Un probabile workaround (soluzione che aggira il problema) consiste in una archiviazione opzionale di un extra layer ridondante contenente tutti dati dei pixel pienamente renderizzati, risultante dall'elaborazione completa dell'immagine, o forse uno snapshot con risoluzione inferiore all'immagine, adatto per l'anteprima e le miniature. Possono essere definiti diversi livelli di implementazione, come: minuscolo, semplice, piccolo, normale, completo e personalizzato.

## Applicativi che lo supportano

OpenRaster ha un limitato supporto in alcuni programmi di grafica e tra questi l'uso di applicazioni di interscambio dati non ha uno sviluppo continuativo.
| Applicazioni | Stato |
| MyPaint | Formato file di default. |
| GIMP | Supporto essenziale sia in importazione che in esportazione con la versione 2.8. |
| Krita | Supportato. |
| DrawPile | Di base (versione in sviluppo). |
| Nathive | Formato di default dalla versione 0.908. |
| Pinta | Supportato a partire dalla versione 0.4. |
| XnView | Supportato a partire dalla versione 1.98.1 |