X BitMap - X BitMap

X BitMap
Blarg.xbm.png
Un file XBM di esempio
Estensione del nome file
.xbm
Tipo di supporto Internet
immagine / x-xbitmap, immagine / x-xbm
Tipo di formato Formati di file immagine
Esteso da C (linguaggio di programmazione)
Esteso a X PixMap (XPM)

In computer grafica , il sistema X Window utilizzato X BitMap ( XBM ), un testo semplice binario formato immagine , per la memorizzazione del cursore e icona bitmap utilizzati nel X GUI . Il formato XBM è stato sostituito da XPM , apparso per la prima volta per X11 nel 1989.

Formato

I file XBM differiscono notevolmente dalla maggior parte dei file di immagine in quanto assumono la forma di file sorgente C. Ciò significa che possono essere compilati direttamente in un'applicazione senza alcuna fase di pre-elaborazione, ma li rende anche molto più grandi dei loro dati pixel grezzi. I dati dell'immagine sono codificati come un elenco separato da virgole di valori di byte, ciascuno scritto nella notazione esadecimale C, ad esempio "0x13", in modo che vengano utilizzati più caratteri ASCII per esprimere un singolo byte di informazioni sull'immagine.

I dati XBM sono costituiti da una serie di array di caratteri non firmati statici contenenti i dati dei pixel monocromatici . Quando il formato era di uso comune, un XBM appariva tipicamente nelle intestazioni (file .h) che presentavano un array per immagine memorizzata nell'intestazione. Il seguente pezzo di codice C esemplifica un file XBM:

#define test_width 16
#define test_height 7
static unsigned char test_bits[] = {
0x13, 0x00, 0x15, 0x00, 0x93, 0xcd, 0x55, 0xa5, 0x93, 0xc5, 0x00, 0x80,
0x00, 0x60 };

Al posto della solita intestazione in formato file immagine, i file XBM hanno due o quattro istruzioni #define. Le prime due #define specificano l'altezza e la larghezza della bitmap in pixel. I secondi due, se presenti, specificano la posizione di qualsiasi hotspot all'interno della bitmap. (Nel caso di cursori bitmap, "hotspot" si riferisce alla posizione del "punto" del cursore, generalmente a 0,0.)

I dati dell'immagine XBM sono costituiti da una riga di valori di pixel memorizzati in un array statico. Poiché un singolo bit rappresenta ogni pixel (0 per il bianco o 1 per il nero), ogni byte nella matrice contiene le informazioni per otto pixel , con il pixel in alto a sinistra nella bitmap rappresentato dal bit inferiore del primo byte nella matrice. Se la larghezza dell'immagine non corrisponde a un multiplo di 8, i bit extra nell'ultimo byte di ogni riga vengono ignorati.

Supporto

Alcuni browser Web supportano la visualizzazione di immagini XBM come residuo dei primi giorni del World Wide Web , quando XBM era il formato di file immagine minimo non proprietario. Il browser web Arena ha avuto pieno supporto dalla versione 0.3.34 (25 luglio 1997). Il supporto XBM è stato rimosso da Internet Explorer 6 , Mozilla Firefox 3.6 e browser basati su WebKit . C'è una forte indicazione che Chromium (e quindi, anche, Google Chrome ) non supporta XBM. La documentazione per Opera 2.12 e 6.0 indica che XBM era almeno precedentemente supportato.

Alcuni visualizzatori / convertitori di immagini, ad esempio XnView , FFmpeg e IrfanView , supportano XBM. Un XBM 48 × 48 può essere convertito in Ikon ed eventualmente X-Face con gli strumenti Netpbm .

Nonostante sia stato sostituito dal formato XPM , XBM è ancora utilizzato da alcuni gestori di finestre moderni ma leggeri come Openbox per definire semplici immagini di pulsanti nella barra del titolo di una finestra, come i pulsanti iconify / minimizza, ripristina e ingrandisci. XBM viene anche utilizzato nell'elaborazione incorporata (microControllori) per visualizzare le icone utilizzate nelle GUI. ImageMagick supporta la conversione di immagini sia da che verso XBM. GIMP può essere utilizzato per creare o modificare immagini utilizzando il formato XBM e supporta anche la conversione di immagini da e verso il formato XBM.

Guarda anche

Riferimenti