SDL2.0显示一张BMP图片方法二


***【在线视频教程】***

好文章,来自【福优学苑@音视频+流媒体】

SDL2.0显示一张BMP图片方法二


初始化: 

SDL_Init(): 初始化SDL。 

SDL_CreateWindow(): 创建窗口(Window)。 

SDL_CreateRenderer(): 基于窗口创建渲染器(Render)。 

SDL_CreateTexture(): 创建纹理(Texture)。 


循环渲染数据: 

SDL_UpdateTexture(): 设置纹理的数据。 

SDL_RenderCopy(): 纹理复制给渲染器。 

SDL_RenderPresent(): 显示。


int main_ShowBMPImage_texture()
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Window* window = SDL_CreateWindow(
"显示bmp图片", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 360, SDL_WINDOW_SHOWN);
SDL_Renderer* renderer = SDL_CreateRenderer(
window, -1, SDL_RENDERER_ACCELERATED);
SDL_RenderClear(renderer);
SDL_Surface* surface = SDL_LoadBMP("./Hello_world.bmp");
SDL_Rect box = { 0, 0, surface->w - 50, surface->h - 50 };
SDL_Texture* texture = SDL_CreateTextureFromSurface(renderer, surface);
SDL_RenderCopy(renderer, texture, &box, &box);
SDL_RenderPresent(renderer);
SDL_Delay(2000);
SDL_FreeSurface(surface);
SDL_DestroyTexture(texture);
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}


好文章,来自【福优学苑@音视频+流媒体】
***【在线视频教程】***