bmp格式图片高度负值问题[miui第二帧logo制作]
2013 年 2 月 28 日 bmp格式图片高度负值问题[miui第二帧logo制作]无评论
在处理miui第二帧logo时,得到的图片是经过RGB->BGR色彩转换的图片,但是这样并不能制作出成功的logo,会导致严重的失真,通过file查看发现其格式为:
PC bitmap, Windows 3.x format, 480 x -800 x 32
这就奇怪了,高度为负值。如下资料所示得知了BMP这一个黑暗历史:
http://blog.chinaunix.net/uid-20737871-id-1881195.html
BMP格式设计者规定,当高度为正值时,图像数据块中记录的第一行像素数据是图像的最后一行;而数据块中最后一行数据才是实际图像的第一行,也就是说,数据块中的行记录与实 际图像反序。而当高度为负值时,数据块中的行记录与实际图像才是同序的。
所以需要将图片垂直翻转。得到的图就是处理好的图,放入boot.img后就可以作为正常的图片显示了,图的效果如下:
发表评论