[C con Clase] SDL2 Salvar pantalla como bmp

Hl3 halowin3 en gmail.com
Mie Nov 20 08:58:13 CET 2013


Hola.
Pues tienes razón, eso del rendertarget no pinta nada ahi.
Ya encontré la solucion, me funciona en Wxp y W7-64 y W8-64.

//*******************************

SDL_Window *win = SDL_CreateWindow("salvando pantalla", 100,100, SCREEN_WIDTH, SCREEN_HEIGHT, 0 );

SDL_Renderer *ren = SDL_CreateRenderer(win, -1,	SDL_RENDERER_SOFTWARE );

SDL_Surface *img = DL_CreateRGBSurface(0,SCREEN_WIDTH,SCREEN_HEIGHT,32,0,0,0,0);
img = IMG_Load("algo.png");

SDL_Texture *tex = SDL_CreateTextureFromSurface(ren, img);

SDL_Rect ori =  img->clip_rect ;
SDL_Rect des  ={ 250,200,img->w, img->h };  

SDL_RenderCopy(ren, tex, NULL, &des );

// ************* SALVANDO EL RESULTADO *************************  	
SDL_Surface* salvapantalla = SDL_GetWindowSurface( win );
SDL_SaveBMP( salvapantalla, "salvado.bmp");	
SDL_FreeSurface(salvapantalla);
//****************************************************************	

...
...
...

Hasta que no he puesto en la creacion del renderer el flag 

SDL_RENDERER_SOFTWARE

no ha funcionado.

Un saludo

	


Más información sobre la lista de distribución Cconclase