XBM格式
1. 简介
XBM 是一种最简单的一种图像格式,不像其他图像格式那样最终存储的二进制数据,XBM 图像格式存的是 C 源码。XBM 格式基本只在 X Windows 系统上使用,只支持两种颜色。相较于 BMP 格式,XBM 格式更像是 BMP 图像在 Windows 下的 icon 文件。
【注】XBM 格式在 X Windows 环境外几乎很少用到。
2. 格式
2.1 详解
XBM 图像格式示例如下:
1 |
|
其中,imagename
为具体的 XBM 文件名;imagename_width
和 imagename_height
分别表示图像的宽度和高度;imagename_hot_x
和 imagename_hot_y
分别表示 hotspot 的位置(hotspot 是用来表示光标的在图像中的绝对位置);最后的一维 imagename_bits
数组表示图像的像素信息,每个字节表示 个像素信息。图像的像素信息是按照从上到下、从左到右的顺序存储在 imagename_bits
数组中,如果图像的宽度不是 的整数倍,则每一行最后字节中额外的比特数将不被使用。
- XBM 图像中像素数据实际占用的空间大小为:
- XBM 图像是二值图像,不包含色彩信息。比特值 表示和背景色相同,比特值 表示和前景色相同。
2.2 注意事项
虽然 XBM 本质上是符合 C 语言语法的源文件,但在写 XBM 文件时,需要注意以下事项,否则可能导致 XBM 文件无法被软件正常读取显示:
- 不要使用空白行。
- 不要使用注释。
- 按照格式详解中的给出的顺序书写各个字段。
#define
定义的数值需要写成十进制格式。- 在
#
和define
之间不能有空格。 - 像素数据需要使用十六进制书写。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!