cocos2dx学习笔记(截图)

转载:http://blog.csdn.net/qq_17749439/article/details/37931861

截图的实现

[cpp]  view plain copy
  1. //CCRenderTexture其作用说将绘图设备从屏幕转移到一张纹理上  
  2. //从而使得一段连续到绘图被保存带纹理中  
  3. //截图函数  
  4.  CCRenderTexture* saveScreenToRenderTexture() {  
  5.      CCSize winSize = CCDirector::sharedDirector()->getWinSize();  
  6. //     创建CCRenderTexture  
  7.      CCRenderTexture *render = CCRenderTexture::create(winSize.width,winSize.height);  
  8. //   绘图开始  
  9.      render->begin();  
  10. //     绘制当前的图形  
  11.      CCDirector::sharedDirector()->drawScene();  
  12. //     绘图结束  
  13.      render->end();  
  14.      return render;  
  15.  }  
  16. //在屏幕上显示截图并保存  
  17. void Text::saveScreen() {  
  18.       
  19.      CCRenderTexture* render = saveScreenToRenderTexture();  
  20.      this->addChild(render);  
  21. //    缩小绘制的图形  
  22.      render->setScale(0.3);  
  23. //    render->setAnchorPoint(ccp(1,0));  
  24.      render->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width/2, 200));  
  25. //保存截图  
  26.      render->saveToFile("MyScene.png");  
  27. }  

这里我用菜单的回调函数来测试截图

[cpp]  view plain copy
  1. //获取可视区域大小  
  2. CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();  
  3. //获取可视区域左下角坐标  
  4. CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();  
  5. //创建菜单项的图像,回调函数为截图  
  6. CCMenuItemImage *pCloseItem = CCMenuItemImage::create(  
  7.                                                       "CloseNormal.png",  
  8.                                                       "CloseSelected.png",  
  9.                                                       this,  
  10.                                                       menu_selector(Text::saveScreen));  
  11. //将菜单项的图像放在右下角  
  12. oseItem->setPosition(ccp(origin.x + visibleSize.width - pCloseItem->getContentSize().width/2 ,  
  13.                             origin.y + pCloseItem->getContentSize().height/2));  
  14.   
  15. // create menu, it's an autorelease object  
  16. //将菜单项的图像加入菜单  
  17. CCMenu* pMenu = CCMenu::create(pCloseItem, NULL);  
  18. pMenu->setPosition(CCPointZero);  
  19. this->addChild(pMenu, 1);  

在mac下寻找iso模拟器的保存的图片

在终端输入defaults write com.apple.finder AppleShowAllFiles -bool true 来显示隐藏的文件夹

在finder上点前往文件夹下输入/Users/Name/Library/Application Support/iPhone Simulator/ name为自己的用户名

iPhone Simulator便是iso模拟器的目录了

然后在搜索中搜索Myscene.png就可以找到该图片了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值