cocos2d-x 截图保存到android端的坑啊 ---cocos2d-x学习之路[2]

当前项目使用的cocos2d-x 1.0.3的版本。方法和2.0以后的版本的可能名字不太一样,但是大体意思一致:

coocs2d-x 截图使用 CCRenderTexture的方法

参考资料: http://wxphp.com/wxd-2b09a027bb68a98270fefa26-1.html

http://blog.csdn.net/xexiyong/article/details/9272291

//此处添加截图代码,将截图保存后,再通过JNI传递到android端调用shareSDK分享图片 ,分享完成后获得弹珠
void GameRecordDlg::shareCallback(CCObject* pSender){
	CCLog("shareCallback......");
	/**
		截图相关
	*/
	CCSize size = CCDirector::sharedDirector()->getWinSize();  
	//定义一个屏幕大小的渲染纹理  
	CCRenderTexture* pScreen = CCRenderTexture::renderTextureWithWidthAndHeight(size.width,size.height);  
	//获得当前的场景指针  
	//CCScene* pCurScene = CCDirector::sharedDirector()->getRunningScene();  
	//获得现在Layer
	GameRecordDlg* pCurScene = GameRecordDlg::sharedRecordDlg();
	//渲染纹理开始捕捉  
	pScreen->begin();  
	//当前场景参与绘制  
	pCurScene->visit();  
	//结束捕捉  
	pScreen->end(false);  
	//路径 注意有坑,sdcard 双//  ,android sdcard path
	const char *shareFile = "//sdcard/ShareImage.png";
	//保存为png 没有参数的保存图片方法可以直接将图片保存到指定的路径中
	//但是输入参数的方法(kCCImageFormatPNG) 文件名中不能指定路,方法内已经获得默认的路径  
	if ( pScreen->saveBuffer( shareFile,  0, 0,  size.width, size.height)  )//pScreen->saveBuffer(kCCImageFormatPNG, shareFile,  0, 0,  size.width, size.height)
	{
		CCLog("saveBuffer scuess");
	}else{
		CCLog("saveBuffer error");
	}
	//结束且释放  
	CC_SAFE_DELETE(pScreen);   
}
//坑了一晚上,备忘。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值