Cocos2dx 截屏功能 3.2以上版本
发布时间:2020-12-14 17:08:40 所属栏目:百科 来源:网络整理
导读:本文转载:http://www.areskill.com/?p=356 Cocos2d-x 截屏 3.2以上版本 使用utils::captureScreen 截屏,然后回调 auto listener = EventListenerTouchOneByOne ::create();listener-onTouchBegan = [ this ](Touch *touch,Event *event){ capture(nullptr)
本文转载:http://www.areskill.com/?p=356 使用utils::captureScreen 截屏,然后回调 auto listener = EventListenerTouchOneByOne::create();
listener->onTouchBegan = [this](Touch *touch,Event *event){
capture(nullptr);
return false;
};
Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener,this);
//屏幕截图
void HelloWorld::capture(Ref* sender) {
log("ScreenShot");
utils::captureScreen(CC_CALLBACK_2(HelloWorld::afterCapture,this),"ScreenShot.png");
}
//截图后执行afterCapture
void HelloWorld::afterCapture(bool succeed,const std::string& outputFile) {
if (succeed) {
log("%s",outputFile.c_str());
//显示截图
Sprite* sp = Sprite::create(outputFile);
Size visibleSize = Director::getInstance()->getVisibleSize();
Vec2 origin = Director::getInstance()->getVisibleOrigin();
sp->setPosition(Vec2(visibleSize.width/2+origin.x,visibleSize.height/2+origin.y));
this->addChild(sp);
sp->setScale(0.5); //放缩
}
else {
log("Capture screen failed.");
}
}
原文地址:http://www.areskill.com/?p=356 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |