cocos2dx之保存截屏图片
来源:互联网 发布:对酒当歌的心谁人知 编辑:程序博客网 时间:2024/04/29 02:16
我们要保存当前的运行的scene的截图的话,我用到CCRenderTexture,看例子代码:
CCSize size = CCDirector::sharedDirector()->getWinSize();CCRenderTexture *screen = CCRenderTexture::create(size.width, size.height);CCScene *scene = CCDirector::sharedDirector()->getRunningScene();screen->begin();scene->visit();//将当前的整个scene绘出来screen->end();screen->saveToFile("MyCurScene.png", kCCImageFormatPNG);
然后我们再看后面的saveToFile源码:
bool CCRenderTexture::saveToFile(const char *fileName, tCCImageFormat format){ bool bRet = false; CCAssert(format == kCCImageFormatJPEG || format == kCCImageFormatPNG, "the image can only be saved as JPG or PNG format"); CCImage *pImage = newCCImage(true); if (pImage) { std::string fullpath = CCFileUtils::sharedFileUtils()->getWritablePath() + fileName;//得到保存资源的位置 bRet = pImage->saveToFile(fullpath.c_str(), true); } CC_SAFE_DELETE(pImage); return bRet;}
对于传进来的fileName,内部又调用了下面的函数,通过getWritablePath提供了存储的路径,getWritablePath内部通过不同平台提供不同的路径,于是对于常见的两种平台,有了下面的路径。
std::string fullpath = CCFileUtils::sharedFileUtils()->getWritablePath() + fileName;
a.如果是VS环境下的话,会存放在跟项目相关的Debug.win32目录下;
b.如果是在Android平台下,会存放在类似这样的一个路径下面/data/data/com.nt.tower/files/cocos2d-x-screenshot.png(这个是我的安卓工程拿到的路径)
这个路径才是我们更关心的,结构类似于这样 /data/data/+PACKAGE+/files/filename(package就是安卓工程的主包名,一般都是com.xx.yy这种)
typedef enum eImageFormat{ kCCImageFormatJPEG = 0, kCCImageFormatPNG = 1,} tCCImageFormat;
0 0
- cocos2dx之保存截屏图片
- cocos2dx之保存截屏图片
- cocos2dx之保存截屏图片
- cocos2dx保存截屏图片
- cocos2dx实现截屏并保存图片
- cocos2dx-lua3.12版本保存图片、截屏显示
- cocos2dx下载网络图片保存在本地
- Cocos2dx加载网络图片并保存
- ps之保存图片
- 【cocos2d-x】cocos2dx之截图保存
- cocos2dx的数据保存之UserDault
- OpenCV、EmguCV之保存图片
- iOS开发之保存图片
- cocos2dx-lua 3.4 之 图片资源加密!
- 截屏并保存JPG图片
- 关于iOS截屏和保存图片
- swing生成图片之保存图片
- thinkphp保存图片之图片加边框保存
- setsockopt
- 常用linux端口查询操作命令
- 1000. Binary Searchable
- java线程之InheritableThreadLocal
- python读写文件
- cocos2dx之保存截屏图片
- eclipse打开当前文件所在文件夹的插件
- 方向-Focus
- 面向对象IOS编程中的聚合与耦合
- 森纵培训第二十一天课程总结
- 1001. Who's the Boss
- 使用SpringMVC创建Restfult风格应用
- C++ 中关于 iostream、源文件命名约定以及运行 GNU (微软)编译器的几点说明
- 1002. 明明的随机数