泉州正规制作网站公司,上海企业名录地址电话,ui交互设计软件,网站可以有二维码吗【RenderTexture】 RenderTexture这个动态纹理类#xff0c;顾名思义就是可以动态创建纹理图片。 屏幕截图主要步骤#xff1a; 开始截图#xff1a;render-begin(); 遍历场景#xff1a;scene-visit(); 结束截图#xff1a;render-end(); 顾名思义就是可以动态创建纹理图片。 屏幕截图主要步骤 开始截图render-begin(); 遍历场景scene-visit(); 结束截图render-end(); 保存截图render-saveToFile(string filename, Image::Format format); 其中Image::Format为图片格式可以保存为PNG、或JPG两种格式。 即Image::Format::PNG、Image::Format::JPG。 第一种截图方法 1、截图方法 //
void HelloWorld::capture(Ref* sender)
{CCLOG(ScreenShot);//获取屏幕尺寸大小Size winSize CCDirector::sharedDirector()-getWinSize();//创建RenderTexture纹理图片大小为窗口大小winSizeRenderTexture* screen RenderTexture::create(winSize.width, winSize.height);//屏幕截图screen-begin(); //开始抓屏this-getParent()-visit(); //遍历当前场景Scene的所有子节点信息画入screen中screen-end(); //结束抓屏//保存截图screen-saveToFile(ScreenShot.png, Image::Format::PNG); //保存为PNG格式//screen-saveToFile(ScreenShot.jpg, Image::Format::JPG); //保存为JPG格式
}
//2、保存路径 Win32 保存在 Debug.win32/ 目录下。 Android保存在 /data/data/com.summer.hello/files/ScreenShot.png 。 第二种截图方法 【utils::captureScreen】 在v3.2版本utils::captureScreen()方法被加入用于保存屏幕截图。 1、定义 //// afterCaptured 该方法将在捕捉指令后被执行。// bool : 捕捉屏幕截图是否成功。// string : 截图存储的路径。// filename 截图的名字。// 可以只是一个文件名。 像这样ScreenShot.png。// 也可以是一个绝对路径。像这样/sdcard/ScreenShot.png。void captureScreen(const std::functionvoid(bool, const std::string) afterCaptured, const std::string filename)
//2、截图方法 //
//屏幕截图
void HelloWorld::capture(Ref* sender)
{CCLOG(ScreenShot);utils::captureScreen(CC_CALLBACK_2(HelloWorld::afterCapture, this), ScreenShot.png);
}//截图后执行afterCapture
void HelloWorld::afterCapture(bool succeed, const std::string outputFile)
{if (succeed){CCLOG(%s, outputFile.c_str());//显示截图Sprite* sp Sprite::create(outputFile);sp-setPosition(winSize / 2);this-addChild(sp);sp-setScale(0.25); //放缩}else{CCLOG(Capture screen failed.);}
}
//3、保存路径 filename可以只是一个文件名保存到相对路径像这样 ScreenShot.png。 filename也可以是一个绝对路径 像这样 /sdcard/ScreenShot.png。 转载于:https://www.cnblogs.com/luorende/p/6063951.html