c pvr转存pvr.ccz格式
pvr.ccz 是把pvr用zlib算法压缩后的图像格式,其优点是可以提升文件读取效率。
大多数情况下我们可以用一些工具来将pvr压缩到pvr.ccz ,下面提供一个c++方法来完成这个过程
int CompressPvrToCCZFile(unsigned char *buffer,unsigned int fileLength, const char *newFilePath)
{
//buffer pvr文件二进制数据,fileLength 文件长度,newFilePath 保存地址
unsigned long bufferSize = fileLength;
char* DestBuffer=new char[(uInt)bufferSize];memset(DestBuffer, , bufferSize);
errno_t err; //错误变量的定义
err = compress((Bytef*)DestBuffer,(uLongf*)&bufferSize,(const Bytef*)buffer,(uLongf)fileLength); //
CCZHeader header;
header.version = ;
header.len = ((fileLength & 0x000000ff) >> | (fileLength & 0x0000ff00) >> | (fileLength & 0x00ff0000) << | (fileLength & 0xff000000) << );
header.compression_type = CCZ_COMPRESSION_ZLIB; header.sig[] = 'C';
header.sig[] = 'C';
header.sig[] = 'Z';
header.sig[] = '!'; //保存文件
FILE *fp = fopen(newFilePath, "wb+");
if (!fp)
{
delete []DestBuffer; return -;
}
fwrite(&header, sizeof(header), , fp);
fwrite(DestBuffer, bufferSize, , fp);
fclose(fp);
delete []DestBuffer; return ;
}
c pvr转存pvr.ccz格式的更多相关文章
- c pvr转存pvr.ccz格式 (转 http://www.cnblogs.com/howeho/p/3586379.html)
pvr.ccz 是把pvr用zlib算法压缩后的图像格式,其优点是可以提升文件读取效率. 大多数情况下我们可以用一些工具来将pvr压缩到pvr.ccz ,下面提供一个c++方法来完成这个过程 int ...
- asp.net实现将网页存为mht格式文件,类似于网页另存为mht功能
MHT 首先说一下什么是mht格式文件,MHT叫“web单一文件”,就是把网页中包含的图片,CSS文件以及HTML文件全部放到一个MHT文件里面,而且浏览器可以直接读取显示.可以通过ie浏览器将一个网 ...
- ps存jpeg,格式保存的时候为什么选择“基线”
jpeg是印前和网页设计常用的格式,最大好处就是能很大程度上压缩图像大小. 在ps中将图片保存为jpeg格式的时候会出现以下选项: 其中:图像选项都很熟悉,是关于图像质量的:而格式选项的用途主要是针对 ...
- 用pandas库修改excel文件里的内容,并把excel文件格式存为csv格式,再将csv格式改为html格式
假设有Excel文件data.xlsx,其中内容为: ID age height sex weight张三 1 39 181 female 85李四 2 ...
- Softmatic ScreenLayers 将截图存为psd格式
Softmatic ScreenLayers 是 Mac 上的一款截图软件,它与众不同的地方是可以将截取的屏幕图片按PSD格式保存到本地,并且图片里的每一种元素都被单独放入一个独立的layer,比如M ...
- Chrome V75V76新版无法存为mhtml格式解决办法
升级到75.76版本后谷歌浏览器Chrome V75.0.3770.142 V76.0.3809.87新版,发现无法另存为/保存网页为MHTML了.原来chrome搞了个"Chrome Fl ...
- JAVA实现网页快照,存为图片格式
原文:http://blog.csdn.net/java2000_net/article/details/3643528 截取的google的效果,将就吧,不是特别好. 但是作为普通的应用,我想这个效 ...
- 在cocos2d里面如何使用Texture Packer和像素格式来优化spritesheet
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作 ...
- hive中rcfile格式(收藏文)
首先声明,此文是属于纯粹收藏文,感觉讲的很不错. 本文介绍了Facebook公司数据分析系统中的RCFile存储结构,该结构集行存储和列存储的优点于一身,在MapReduce环境下的大规模数据分析中扮 ...
随机推荐
- evaluateScript--evaluatePopoverScript--区别
appcan.window.evaluateScript({}) //window.open()页面之间使用 appcan.window.evaluatePopoverScr ...
- sae-php调试代码,不输出页面
如果单单使用sae_debug,页面就会输出SAE_DEBUG的信息,所以造成很多问题,例如回复微信服务器的xml,但是不知道就想着调试,结果... 所以怎么解决让调试信息不输出页面呢 看完手册,才知 ...
- LBS地理位置距离计算方法之geohash算法
随着移动终端的普及,很多应用都基于LBS功能,附近的某某(餐馆.银行.妹纸等等).基础数据中,一般保存了目标位置的经纬度:利用用户提供的经纬度,进行对比,从而获得是否在附近.这里需要在设置出一个字段, ...
- linux sed命令学习
. Sed简介 . 定址 . Sed命令 . 选项 . 元字符集 . 实例 . 脚本 . 小技巧 . Sed简介 sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中, ...
- cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行)转载请保留作者信息:1.cin1 ...
- WebService 学习过程
//------------------------------------------------------------------------------------------ //windo ...
- qt 5 小练习 创建无边框界面
我们大家都知道QT5 自带的界面不是那么美观,并且每个软件我们都发现他们的边框是自定义的,所以我决定写一篇这样的博文,也许已经有许许多多篇大牛写的论文了,但我还是想写一篇记录自己的学习QT的历程 首先 ...
- POJ 3254 压缩状态DP
题意:一个矩形网格,可以填0或1, 但有些位置什么数都不能填,要求相邻两个不同时为1,有多少种填法.矩形大小最大 12*12. 压缩状态DP大多有一个可行的state的范围,先求出这个state范围, ...
- 项目的敏捷开发方法(转自MBAlib)
项目的敏捷开发方法 敏捷方法很多,包括 Scrum.极限编程.功能驱动开发以及统一过程(RUP)等多种法,这些方法本质实际上是一样的,敏捷开发小组主要的工作方式可以归纳为:作为一个整体工作: 按短迭代 ...
- 关于Spring运用过程中jar包报错问题
使用Spring进行web开发时,第一步就是导入jar包,今天使用SPring Task开发定时器时,导入了好多次jar包,都是报错,不知道是因为jar包版本不同还是因为需要依赖的jar包没加入,反正 ...