原文:http://hi.baidu.com/yaxch/item/419b1877ae59bc377044233b
苹果在4.2.1以后都用cpBitmap来当做屏幕和锁屏的背景图文件。
找了一圈 网上基本都没有文章说如何从jpg或者png生成cpBitmap,只有一个文章说的是从cpBitmap生成jpg
http://cpbitmap.cleverbyte.com.au/ 这个哥们在codeproject有个C#的项目也就是读取cpBitmap 生成jpg http://www.codeproject.com/Articles/265333/Reading-Apple-iDevice-CPBitmap-files
后来用vi分析了一下cpBitmap 发现cpBitmap的格式很简单
就是把每个点rgb值和alpha值取出来简单一下排列,没有任何压缩,最后加了一个包尾
rrggbbaa rrggbbaa rrggbbaa rrggbbaa .....
包尾似乎有两个版本
旧版的比较简单就24个字节
新版本有70个字节
直接用旧版本的格式就行了
第0个int无用 第一个int是width 第二个int是height,其余的直接拷贝就行了
staticunsignedchartailData[] = {
0x00, 0x00, 0x00, 0x00,
0x80, 0x02, 0x00, 0x00, 0xc0, 0x03, 0x00, 0x00, //0x280 0x3c0 640x960
0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
0x00, 0x00, 0x91, 0x32, 0xa4, 0xcb,
};