
我试过SDL_Getwindowsurface,但是我收到一个错误,说:“没有硬件加速渲染器可用.我把代码从: How do I take and save a BMP screenshot in SDL 2?
我想到的另一个解决方案是将纹理转换为曲面,但我没有这样做
你有什么解决方案吗?
谢谢
SDL_Surface *sshot = SDL_CreateRGBSurface(0,w,h,32,0x00ff0000,0x0000ff00,0x000000ff,0xff000000);SDL_RenderReadPixels(renderer,NulL,SDL_PIXELFORMAT_ARGB8888,sshot->pixels,sshot->pitch);SDL_SaveBMP(sshot,"screenshot.bmp");SDL_FreeSurface(sshot);
其中w和h是屏幕宽度和高度(您可以使用SDL_GetRendererOutputSize()获取这些值).
总结以上是内存溢出为你收集整理的SDL2 C截图全部内容,希望文章能够帮你解决SDL2 C截图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)