-
-
[已解决]图片解析(一)
-
发表于:
2009-3-14 17:13
8851
-
困扰很久的问题...
一游戏依赖的文件,里面存了大量的图片...因为好多图片都使用一个调色板,所以调色板只存了几个...对于普通的图片,数据流长度是width*height,很容易被解析出来,但这个文件里还有其他好几种格式,却看不懂.
0000148ch: 43 52 50 53 00 00 00 0C B5 F7 01 00 F4 1C 00 00 ; CRPS....调..?..
这是一个图片的定位方法.
第一个DWORD,是ASCII标识
第二个DWORD,如果是00000000话,是普通图片,如果是0000000C的话,就是我下面需要解析的图片...
第三个DWORD,是该图片所依赖的调色板在文件中的偏移量
第四个DWORD,是该图片开始位置在文件中的偏移量
图片:
第一个DWORD,是宽,第二个DWORD,是高,其后是数据.
0F 00 00 00 17 00 00 00 03 00 82 D8 58 04 00 83 E7 D5 58 05 00 84 E7 DB D5 58 06 00 85 E7 DB C3
D8 58 08 00 87 E7 D8 C3 C8 D5 B7 58 09 00 88 E7 D5 C8 C8 C8 CA C3 58 0A 00 89 E7 D5 C8 C8 C8 C8
C8 C8 B7 0C 00 8B E7 CA C8 C8 C8 C8 C8 C8 C8 C8 58 0E 00 8D E7 CA CA CA CA CA CA CA CA CA CA B5
58 0F 00 8E E7 CA CA CA CA CA CA CA CA CA CA CA C3 58 10 00 8F E7 CA D5 D5 D5 C4 55 55 55 50 50
50 50 50 38 10 00 8F E7 D5 D5 D5 C9 7A 29 1A 1A 1A 1A 1A 1A 1A 1A 10 00 8F E7 D5 D5 D5 91 37 18
17 17 17 17 17 17 18 18 10 00 8F E7 D8 D8 CB 6D 30 18 17 17 17 17 17 17 17 18 10 00 8F E7 D8 CE
6F 31 30 17 17 17 17 17 17 17 17 17 07 00 86 E2 D6 90 37 30 30 06 00 85 E0 92 6C 30 30 06 00 CE
6F 31 30 30 05 00 84 7A 32 30 30 04 00 83 37 30 30 03 00 82 30 30 03 00 82 30 30 02 00 81 30
数据长度不等于宽*高,但看起来很有规律,因为一些XX 00的数据,个数正好是图片高度,且其后的数据长度正好等于他,且数据里没有00数据...根据规律看也不是RLE压缩格式..如果去掉XX 00这些数据后,数据长度也小于宽*高.看似象压缩格式,但数据里重复的还很多.这个问题困扰我一年了,不知大家看到过这种格式的图片格式吗?只需告诉我规律,我会自己编程来解析的...
声明:我确定是这是图片数据...因为游戏采用DIRECTX技术,无法动态跟踪到这里,要不早解出来了...
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课