-
1、Cocos2d-x3.1
在Cocos2d-x3.2之前,Cocos引擎没有提供截图功能,但是可以通过RenderTexture实现, - 原文链接:http://www.it165.net/pro/html/201409/21451.html
1.1首先在CCDirector.h中添加如下代码:并在其中添加头文件 #include "2d/CCRenderTexture.h"
1.2然后在CCDirector.cpp中添加如下代码:
01.@H_403_17@ Director::saveScreenshot(@H_403_17@std::string &fileName,宋体; background:none">std::string &)> &callback)@H_403_17@
05.@H_403_17@
if@H_403_17@
(std::string::npos != fileName.find_last_of(@H_403_17@
"."@H_403_17@
)){@H_403_17@
06.@H_403_17@
auto extension = fileName.substr(fileName.find_last_of(@H_403_17@
),fileName.length());@H_403_17@
09.@H_403_17@
}@H_403_17@
else@H_403_17@
".jpg"@H_403_17@
10.@H_403_17@ format = Image::Format::JPG;@H_403_17@
12.@H_403_17@ log(@H_403_17@
"cocos2d: the image can only be saved as JPG or PNG format"@H_403_17@
);@H_403_17@
15.@H_403_17@ 16.@H_403_17@ 17.@H_403_17@ 18.@H_403_17@
19.@H_403_17@
//获取屏幕尺寸,初始化一个空的渲染纹理对象@H_403_17@
20.@H_403_17@ auto renderTexture = RenderTexture::create(getWinSize().width,getWinSize().height,Texture2D::PixelFormat::RGBA8888);@H_403_17@
35.@H_403_17@ _schedule->schedule(scheduleCallback,宋体; background:none">this@H_403_17@
,宋体; background:none">false@H_403_17@
403_17@
"screenshot"@H_403_17@
);@H_403_17@
36.@H_403_17@