python读入dat文件,python读取16进制的dat文件
由于业务需要,tga格式文件需要在软件系统中直接调用。
但是,python目前的库都不支持tga解码。
于是关导看了tga格式的编码文档,决定做一套解码函数。
0x2的字节偏移量是0x02,也就是说这个文件是没有颜色表的RGB图像。
字节偏移量0xC-0xD为0x28,这意味着图像的宽度为2x16 8=40像素。
0x23的字节偏移量0xE-0xF表示图像的高度为2x16 3=35像素。
字节偏移量0x10为0x20,这意味着每个像素占用32位。
字节偏移量0x11为0x08,需要按位分频。先转换成二进制00001000,位数从右到左递增。
3-0位的值是8,这表示TGA 32的每个像素的属性位数。
第4位必须为0。
5位表示原点在左下角。
7-6位表示没有交叉。
因为没有颜色表
偏移量0x12之后的字节是图像数据字段RGBA。
RGB二极管和透明通道Alpha的发光强度按照蓝绿红Alpha的顺序存储。
0x15f1是图像文件的结尾,
区间是5617,但是总共只有1400个像素,其中每个像素占用4个字节,所以是5600。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。