Struttura del formato XPM
Il formato X PixMap (XPM) è un formato di file immagine utilizzato dal sistema X Window. Esso è concepito per realizzare delle immagini di tipo pixmap, ed immagini trasparenti.
Il formato XPM è sostanzialmente un array di stringhe formate da sei parti essenziali e fondamentali:
/* XPM */ static char* <nome_variabile>[] = { <Values> <Colors> <Pixels> <Extensions> };
I dati presenti nelle sezioni relative a <Values>, <Colors>, <Pixels> e <Extensions> sono racchiuse fra virgolette e terminano con una virgola. Ogni sezione è posta in una nuova riga a capo.
Values
La sezione Values è una stringa che contiene 4 valori interi, separati da uno spazio, che rappresentano in ordine:
- la quantità di pixel costituenti la dimensione orizzontale dell'immagine (le colonne di pixel);
- la quantità di pixel costituenti la dimensione verticale dell'immagine (le righe di pixel);
- il numero di colori presenti nell'immagine;
- il numero di caratteri per pixel.
Esempio:
"8 8 4 1"
Colors
La sezione Colors è formata da tante stringhe quanti sono i colori presenti nell'immagine. Ogni stringa indica un colore, al quale è associato un qualunque carattere di riferimento (anche uno spazio) che sarà poi utilizzato nel codice per generare l'immagine. Il colore, sempre comunque anticipato dal suo carattere di riferimento e dal carattere "c", può essere espresso con il proprio nome, o con il codice RGB in esadecimale anticipato dal segno #, o con un segno % seguito dal codice HSV.
Ogni stringa riferita ad un colore è racchiusa fra virgolette e termina con una virgola, è posta in una nuova riga a capo.
Esempio:
"a c red", "b c #FFFF00", ". c green", " c #0000FF",
Pixels
La sezione Pixels è formata da tante strighe di dati quante sono le righe di pixel previste che compongono la dimensione verticale dell'immagine. Ogni stringa riferita ad una riga di pixel è racchiusa fra virgolette e termina con una virgola, ed è posta in una nuova riga a capo.