cpBitmap文件生成

原文: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,   

    };


你可能感兴趣的:(壁纸,cpBitmap)