转自:http://blog.csdn.net/wolfking_2009/article/details/11022693
static void ScreenShoot() { CCSize size = CCDirector::sharedDirector()->getWinSize(); //定义一个屏幕大小的渲染纹理 CCRenderTexture* pScreen = CCRenderTexture::create(size.width,size.height, kCCTexture2DPixelFormat_RGBA8888); //获得当前的场景指针 CCScene* pCurScene = CCDirector::sharedDirector()->getRunningScene(); //渲染纹理开始捕捉 pScreen->begin(); //当前场景参与绘制 pCurScene->visit(); //结束捕捉 pScreen->end(); //保存为png pScreen->saveToFile("XXXXXX.png", kCCImageFormatPNG); //保存为jpg pScreen->saveToFile("XXXXXX.jpg", kCCImageFormatJPEG); CC_SAFE_DELETE(pScreen); }
有人问这个是保存到哪儿去了。这个是写出文件,所以应该是保存到写出路径下面,翻看了下源码,果然是。写出路径为CCFileUtils::sharedFileUtils()->getWritablePath(),字面理解,这个是可写出的路径,不同平台路径也不同,不过可以通过上面的方法去获取这个路径~~~
想具体了解各个平台的写出路径,可以去看看源码。
win32平台的话,如果debug会生成到exe输出的那个路径,release的话,会生成到c盘用户下面的项目下面~
如果大家有其他的自定义写出文件,可以直接指定路径到CCFileUtils::sharedFileUtils()->getWritablePath()下面
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述