Cocos2dx-截屏并设置图片尺寸
来源:互联网 发布:调整相片大小软件 编辑:程序博客网 时间:2024/06/08 15:26
猴子原创,欢迎转载。转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢!
原文地址: http://www.cocos2dev.com/?p=522
前几天添加微信图片分享的时候,发现全屏截图超出了微信的数据包大小,所以截屏的时候可以考虑缩小尺寸到0.5倍。
下面的截屏代码:
void LHUtil::screenShoot(){ Size visibleSize = Director::getInstance()->getVisibleSize(); //定义一个屏幕大小的渲染纹理 RenderTexture* renderTexture = RenderTexture::create(visibleSize.width * .5, visibleSize.height * .5, Texture2D::PixelFormat::RGBA8888); Scene* curScene = Director::getInstance()->getRunningScene(); Point ancPos = pCurScene->getAnchorPoint(); //渲染纹理开始捕捉 renderTexture->begin(); // 缩小屏幕截屏区域 curScene->setScale(.5); curScene->setAnchorPoint(cocos2d::Point(0, 0)); //绘制当前场景 curScene->visit(); //结束 renderTexture->end(); //保存png renderTexture->saveToFile("screenshoot.png", Image::Format::PNG); // 恢复屏幕尺寸 curScene->setScale(1); curScene->setAnchorPoint(ancPos); CC_SAFE_DELETE(curScene);}
上面是cocos2dx的获取截屏的方法。
我顺便写下如何用OC的UIGraphicsBeginImageContext获取UIView转化成UIImage.
下面是ios方法:
-(void)screenShot:(CGRect)rect{ // 开始设置截屏区域 UIGraphicsBeginImageContextWithOptions(rect.size, YES, 0); [[self.view layer] renderInContext:UIGraphicsGetCurrentContext()]; UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); // 获取image,可以根据需要进行尺寸修改 CGImageRef imageRef = viewImage.CGImage; CGImageRef imageRefRect =CGImageCreateWithImageInRect(imageRef, rect); UIImage *image = [[UIImage alloc] initWithCGImage:imageRefRect]; // 保存图片到相册, 这里会提示用户授权,不需要保存的话,可以取消 UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil); // 获取Documents目录 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"temScreenShot.png"]; // 保存image到Documents目录 NSData *imageData = UIImagePNGRepresentation(image); [imageData writeToFile:savedImagePath atomically:YES]; CGImageRelease(imageRefRect);}
1 0
- Cocos2dx-截屏并设置图片尺寸
- Cocos2dx-截屏并设置图片尺寸
- Cocos2dx-截屏并设置图片尺寸
- 将“Cocos2dx-截屏并设置图片尺寸 ”中cocos2d-x代码转换为2.2的代码
- Cocos2dx-截屏 并设置图片尺寸 保存到设备
- cocos2dx实现截屏并保存图片
- Cocos2dx 竖屏设置
- ios 部分截屏/修改图片尺寸
- [matlab]修改图片尺寸并保存
- Cocos2dx android 横竖屏设置!
- 图片尺寸
- Android:缩小图片尺寸,并添加水印
- php压缩图片尺寸,并转为jpg
- Matlab 文件夹遍历并更改图片尺寸
- 利用ASP获取设置图片尺寸大小
- 利用ASP获取设置图片尺寸大小
- MarkDown 简书上传图片尺寸设置
- cocos2dx安卓平台横竖屏设置
- iOS6和iOS7代码的适配(2)——status bar
- HDU 1241 Oil Deposits(纯DFS)
- 十进制转成十六进制数 查表法
- windows nasm 安装
- 在Ubuntu 12.04 LTS上安装JDK6
- Cocos2dx-截屏并设置图片尺寸
- cuda编程环境搭建
- 全球十大最受欢迎的移动通信App
- 组合算法 C++高效实现 (二进制辅助法)
- mknod用法简介
- 写一个简单的字符设备驱动程序
- javascript中面向对象的方法模拟
- Zookeeper配置(大数据学习跟进)
- 安装bosh—cli遇到libxml2 is missing.解决办法