X BitMap - X BitMap

X BitMap
Blarg.xbm.png
Пример файла XBM
Расширение имени файла
.xbm
Тип интернет-СМИ
изображение / x-xbitmap, изображение / x-xbm
Тип формата Форматы файлов изображений
Расширен с C (язык программирования)
Расширен до X PixMap (XPM)

В компьютерной графике , то X Window System используется X Bitmap ( XBM ), а обычный текстовый двоичный формат изображения , для хранения курсора и значок растровых изображений , используемых в X GUI . Формат XBM заменен XPM , который впервые появился для X11 в 1989 году.

Формат

Файлы XBM заметно отличаются от большинства файлов изображений тем, что они имеют форму исходных файлов C. Это означает, что они могут быть скомпилированы непосредственно в приложение без каких-либо шагов предварительной обработки, но это также делает их намного больше, чем их необработанные данные пикселей. Данные изображения кодируются как список значений байтов, разделенных запятыми, каждое из которых записано в шестнадцатеричной системе счисления C, например, «0x13», так что несколько символов ASCII используются для выражения одного байта информации об изображении.

Данные XBM состоят из серии статических массивов символов без знака, содержащих данные монохромных пикселей . Когда формат широко использовался, XBM обычно появлялся в заголовках (файлах .h), которые содержали один массив для каждого изображения, хранящегося в заголовке. Следующий фрагмент кода C иллюстрирует файл 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 };

Вместо обычного заголовка формата файла изображения в файлах XBM есть два или четыре оператора #define. Первые два #define определяют высоту и ширину растрового изображения в пикселях. Вторые два, если они есть, определяют положение любой горячей точки в растровом изображении. (В случае растровых курсоров «горячая точка» относится к положению «точки» курсора, обычно в 0,0.)

Данные изображения XBM состоят из строки значений пикселей, хранящихся в статическом массиве. Поскольку один бит представляет каждый пиксель (0 для белого или 1 для черного), каждый байт в массиве содержит информацию для восьми пикселей , причем левый верхний пиксель в битовой карте представлен младшим битом первого байта в массиве. Если ширина изображения не кратна 8, лишние биты в последнем байте каждой строки игнорируются.

Служба поддержки

Некоторые веб-браузеры поддерживают отображение изображений XBM как пережиток первых дней всемирной паутины , когда XBM был минимальным непатентованным форматом файлов изображений. Arena веб - браузер имел полную поддержку начиная с версии 0.3.34 (25 июля 1997). Поддержка XBM была удалена из браузеров на базе Internet Explorer 6 , Mozilla Firefox 3.6 и WebKit . Есть явное указание на то, что Chromium (а следовательно, и Google Chrome ) не поддерживает XBM. Документация для Opera 2.12 и 6.0 указывает, что XBM, по крайней мере, ранее поддерживался.

Некоторые программы просмотра / преобразования изображений, например XnView , FFmpeg и IrfanView , поддерживают XBM. XBM 48 × 48 может быть преобразован в Ikon и, в конечном итоге, в X-Face с помощью инструментов Netpbm .

Несмотря на то , что XBM был вытеснен форматом XPM , он все еще используется некоторыми современными, но легковесными оконными менеджерами, такими как Openbox, для определения простых изображений кнопок в строке заголовка окна, таких как кнопки уменьшения / уменьшения, восстановления и развертывания. XBM также используется во встроенной обработке (микроконтроллеры) для отображения значков, используемых в графическом интерфейсе пользователя. ImageMagick поддерживает преобразование изображений как в XBM, так и из него. GIMP может использоваться для создания или изменения изображений с использованием формата XBM, а также поддерживает преобразование изображений в формат XBM и обратно.

Смотрите также

Рекомендации