更多精彩分享:http://blog.csdn.net/u010229677

3.1版本:

在Director里面增加一个函数:

bool Director::saveScreenshot(const std::string& fileName,const std::function<void(const std::string&)>& callback)
{Image::Format format;  //进行后缀判断  if(std::string::npos != fileName.find_last_of(".")){  auto extension = fileName.substr(fileName.find_last_of("."),fileName.length());  if (!extension.compare(".png")) {  format = Image::Format::PNG;  } else if(!extension.compare(".jpg")) {  format = Image::Format::JPG;  } else{  CCLOG("cocos2d: the image can only be saved as JPG or PNG format");  return false;  }  } else {  CCLOG("cocos2d: the image can only be saved as JPG or PNG format");  return false ;  }  //获取屏幕尺寸,初始化一个空的渲染纹理对象  auto renderTexture = RenderTexture::create(getWinSize().width, getWinSize().height, Texture2D::PixelFormat::RGBA8888, GL_DEPTH24_STENCIL8); //最后一个参数省略的话,对clippingnode截图是无效的//清空并开始获取  renderTexture->beginWithClear(0.0f, 0.0f, 0.0f, 0.0f);  //遍历场景节点对象,填充纹理到RenderTexture中  getRunningScene()->visit();  //结束获取  renderTexture->end();  //保存文件  renderTexture->saveToFile(fileName , format);  //使用schedule在下一帧中调用callback函数  auto fullPath = FileUtils::getInstance()->getWritablePath() + fileName;  auto scheduleCallback = [&,fullPath,callback](float dt){  callback(fullPath); };  return true;
}

调用的话:

Director::getInstance()->saveScreenshot("sss.png", nullptr);

3.2版本:

#include "base/ccUtils.h"
utils::captureScreen([](){log("ok");}, "dd.png");

cocos2d-x截屏功能clippingnode也能使用——白白相关推荐

  1. Cocos2d-x 截屏功能集成

    1.集成到Director 这里选择把截屏功能继承到Director中,让全局的导演来执行截屏功能是一个很好的主意. void Director::saveScreenshot(const std:: ...

  2. android实现长截屏,Android实现全屏截图或长截屏功能

    本文实例为大家分享了Android实现全屏截图或长截屏功能的具体代码,供大家参考,具体内容如下 全屏截图: /** * 传入的activity是要截屏的activity */ public stati ...

  3. android4.3 截屏功能的尝试与失败分析

    感谢网友cjd6568358的帮助,新版的Android系统截屏功能已经实现,需要的朋友请移步项目主页:https://github.com/Android-ScreenShot/AndroidScr ...

  4. Atitit截屏功能的设计解决方案

    Atitit截屏功能的设计解决方案 自己实现.... 使用快捷键.. 弹出自己的win,,背景是屏幕快照 点击鼠标光标变成十字状态 出现截屏窗口 调整截屏窗口位置与大小 释放鼠标,三个btn,,  复 ...

  5. java网页截图_Java实现的简单网页截屏功能示例

    本文实例讲述了Java实现的简单网页截屏功能.分享给大家供大家参考,具体如下: package awtDemo; import java.awt.AWTException; import java.a ...

  6. html禁止手机截屏,[置顶] Android 应用内禁止截屏功能的实现

    截图介绍 Android的调试工具DDMS提供有截屏功能,很多软件也会有截屏功能,在做支付等安全类应用的时候,为了保证用户的资产和系统安全,往往会禁止应用内截屏,禁止之后,在此应用处于前台的情况下,截 ...

  7. UnityShader19:渲染纹理(上)之截屏功能实现

    一.渲染到 RT 渲染纹理(Render Texture) 就是游戏开发中经常被提到的 RT,渲染到 RT 本质上就是不将渲染的结果直接显示的屏幕上,而是存至一张指定的纹理中 在 Unity 中最简单 ...

  8. python截图工具和模拟鼠标键盘_python PyAutoGUI 模拟鼠标键盘操作和截屏功能

    简介 一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏. 安装 pip install pyautogui 鼠标键盘控制 >>> impor ...

  9. android自动截图实现,Android实现截屏功能

    原标题:Android实现截屏功能 该方法主要利用SDK提供的view.getDrawingCache()方法,主要步骤如下: 设置view.setDrawingCacheEnabled(true) ...

最新文章

  1. 如何获得PMP认证证书
  2. php原生态三级联动_js,php,html实现地区三级联动
  3. emWin GUIBuilder V5.40a 无法保存文件问题解决方案
  4. 看清上市公司的财务分析
  5. C语言程序设计 | 大端小端存储解析以及判断方法
  6. mysql explain 为空_车祸现场!我的MySQL千万级数据表选错索引了!
  7. nuxt 服务器构建因太耗CPU进程被杀解决办法
  8. 初探弹出层的实现原理
  9. ds排序--希尔排序_排序算法 - 希尔排序分析及优化
  10. eplan如何导入access_EPLAN脚本从入门到应用-2
  11. python输出异常信息
  12. 《银行业金融机构数据治理指引》解读及解决方案建议
  13. 结构光的概念及其实现三维成像的主要原理
  14. 基础会计习题集(第五版-樊
  15. UE4镜头抖动CameraShake
  16. 系统安全及应用实验案例
  17. 《C语言程序设计》江宝钏主编-习题4-3-字母排序!!!
  18. 计算机存储单位--“大数据”概念
  19. ROS踩坑|warning:clock skew detected. Your build may be incomplete
  20. 领英精灵安全吗?附LinkedIn领英开发客户的关键点

热门文章

  1. 网页向女朋友/老婆告白和纪念日专用特效,很简单的程序,贵在有心和精美
  2. python王者归来 pdf下载_OpenStack开源云王者归来 PDF
  3. 网站推荐:Google音乐搜索引擎
  4. C语言小项目——井字棋游戏(升级版)
  5. 一些荤而不腻,辛辣到位的短句收藏
  6. RocketMQ集群部署结构
  7. 数学:微软在.net 平台下提供的数学库
  8. 小腿抽筋非缺钙,中医效方简便廉
  9. (生活处处是商机)很牛的赚钱创业新点子,你也想到这些了吗?
  10. python链接DB2数据库相关问题(离线安装,pandas读取等)