鼠标指针的文件格式
*.cur文件的格式是静态光标文件,它的格式与图标文件*.ico的格式是一致的。
一般情况下,你可以把一个图标文件改名后直接作为鼠标指针来使用。当然,一些色彩丰富的大图标,如果用作鼠标指针的话,在硬件不足的情况下,会出现闪烁的现象。
对于光标文件来说,它与图标文件(*.ico)的不同点主要在于:它使用了热点标志。热点标志是指你按下鼠标按钮时,真正的按下是在光标图形的哪一个点上发生的。因为鼠标指针是一幅图形,所以,需要为它指定一个具体的点(相对于这个图形左上角的位置在X方向和Y方向的偏移量)。如果不指定,这两个值就是0,那么,热点就在鼠标指针的左上角。对于一些特别的鼠标指针来说,这样显然是不合适的,例如在MS Office中当鼠标位于页面的左边附近时,会显示一个向右的箭头,这样的情况下,热点如果还在左上角,就与人们的直观理解有区别了。
而无论是*.cur或者是*.ico,它们的格式都是按PE文件规范来设计的:首先是一个文件类型标记,然后是一段文件引导信息,再后是图像数据,最后是掩码标记区。
掩码区的内容是图标和光标文件与位图文件最大的区别。掩码区用于指出:这幅图像上每个点是否是透明的。透明的效果是,将这个点的颜色与背景上的颜色进行Xor运算而得到实际显示的颜色。
*.ani是动态光标格式,它含有多个图形信息,以及各个图形的显示顺度,显示时间长度的信息,它的结构比较复杂,但每一个图形的格式则与*.cur中图形的描述方式是一样的。在多幅图片之间的关系定义上,它与Gif动画图片是很类似的。