XPM文件格式分析
来源:互联网 发布:多玩怪物猎人2g数据库 编辑:程序博客网 时间:2024/05/05 09:09
导读:
XPM文件的基本结构是
/* XPM */
static char *[] = {
};
其中Values部分相当于图像文件的文件头,它由
[ ] [ XPMEXT ]
构成,其中x_hotspot,y_hotspot,XPMEXT是可选的。
width:图像的宽度,像素为单位
height:图像的高度,像素为单位
numcolors:颜色数
cpp:每个像素占用的字符长度
x_hotspot:热点的X轴位置
y_hotspot:热点的Y轴位置
Colors部分定义的是调色板的信息,它由
{ } { }构成
character是颜色索引值,key是关键字,color是颜色值
key可以有以下几种选项:
m:单色
s:符号名称
g4:4级灰度
g:灰度
c:彩色
color也可以由以下几种构成:
颜色名称
#开头的十六进制数表示RGB空间颜色值
%开头的十六禁止数表示HSV空间颜色值
符号名称
字符串NONE,表示该颜色是透明色
Pixels部分表示实际的像素,全部采用调色板中定义的索引,由等同于图像像素高度的行构成。
Extension部分可以自己定义一些图像附件信息,如作者,标题等,形如
XPMEXT 单行的扩展
XPMEXT
多行的扩展
Extension部分必须以XPMENDEXT标志结束。
例子如:
/* XPM */
static char * plaid[] =
{
/* plaid pixmap */
/* width height ncolors chars_per_pixel */
"22 22 4 2 0 0 XPMEXT",
/* colors */
" c red m white s light_color",
"Y c green m black s ines_in_mix",
"+ c yellow m white s lines_in_dark ",
"x m black s dark_color ",
/* pixels */
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
"Y Y Y Y Y x Y Y Y Y Y + x + x + x + x + x + ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
"x x x x x x x x x x x x x x x x x x x x x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
"XPMEXT ext1 data1",
"XPMEXT ext2",
"data2_1",
"data2_2",
"XPMEXT ext3",
"data3",
"XPMEXT",
"data4",
"XPMENDEXT"
};
本文转自
http://hi.baidu.com/netadabiao/blog/item/d08032d929ab1eeb38012f6e.html
XPM文件的基本结构是
/* XPM */
static char *
};
其中Values部分相当于图像文件的文件头,它由
构成,其中x_hotspot,y_hotspot,XPMEXT是可选的。
width:图像的宽度,像素为单位
height:图像的高度,像素为单位
numcolors:颜色数
cpp:每个像素占用的字符长度
x_hotspot:热点的X轴位置
y_hotspot:热点的Y轴位置
Colors部分定义的是调色板的信息,它由
character是颜色索引值,key是关键字,color是颜色值
key可以有以下几种选项:
m:单色
s:符号名称
g4:4级灰度
g:灰度
c:彩色
color也可以由以下几种构成:
颜色名称
#开头的十六进制数表示RGB空间颜色值
%开头的十六禁止数表示HSV空间颜色值
符号名称
字符串NONE,表示该颜色是透明色
Pixels部分表示实际的像素,全部采用调色板中定义的索引,由等同于图像像素高度的行构成。
Extension部分可以自己定义一些图像附件信息,如作者,标题等,形如
XPMEXT
XPMEXT
多行的扩展
Extension部分必须以XPMENDEXT标志结束。
例子如:
/* XPM */
static char * plaid[] =
{
/* plaid pixmap */
/* width height ncolors chars_per_pixel */
"22 22 4 2 0 0 XPMEXT",
/* colors */
" c red m white s light_color",
"Y c green m black s ines_in_mix",
"+ c yellow m white s lines_in_dark ",
"x m black s dark_color ",
/* pixels */
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
"Y Y Y Y Y x Y Y Y Y Y + x + x + x + x + x + ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x x x x x x x x x x x x x ",
"x x x x x x x x x x x x + x x x x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
"x x x x x x x x x x x x x x x x x x x x x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
" x x x Y x x ",
" x x x x Y x x x ",
"XPMEXT ext1 data1",
"XPMEXT ext2",
"data2_1",
"data2_2",
"XPMEXT ext3",
"data3",
"XPMEXT",
"data4",
"XPMENDEXT"
};
本文转自
http://hi.baidu.com/netadabiao/blog/item/d08032d929ab1eeb38012f6e.html
- XPM文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- BMP文件格式分析
- GIF 文件格式分析
- PE文件格式分析心得
- Icon文件格式分析
- Icon文件格式分析
- zt BMP 文件格式分析
- wab文件格式分析
- PE 文件格式分析
- Intel HEX文件格式分析
- wav文件格式分析详解
- BMP文件格式分析
- WAV文件格式分析
- ASP文件上传原理分析及实现实例
- McAfee防火墙导致Jmail发邮件失败的解决方法
- 向搜索引擎提交网站的技巧
- 设计思考:Flash Web的四层结构浅析
- 看看你所在的城市月薪多少能过上舒适的日子?
- XPM文件格式分析
- java图像界面开发简单实例-JTextArea、JScrollPane、JPanel、JButton应用实例
- 计算机和生命体畅想曲
- 执子之手,与子偕老
- 我奋斗了18年才和你坐在一起喝咖啡
- C# 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)
- 获得让事情变简单的勇气
- COM组件设计与应用(四)(转载)
- 怒斥“Linux的春天在哪里?”一文的谬见