This is new wiki software and old wiki content. It's a work in progress!
Here's the explanation.
Be gentle, report bugs, leave feedback on pages, or just edit them yourself! Thanks!

SDL Wiki


Load a BMP image from a seekable SDL data stream.


SDL_Surface* SDL_LoadBMP_RW(SDL_RWops * src,
                            int freesrc);

Function Parameters


the data stream for the surface


non-zero to close the stream after being read

Return Value

Returns a pointer to a new SDL_Surface structure or NULL if there was an error; call SDL_GetError() for more information.


The new surface should be freed with SDL_FreeSurface(). Not doing so will result in a memory leak.

src is an open SDL_RWops buffer, typically loaded with SDL_RWFromFile. Alternitavely, you might also use the macro SDL_LoadBMP to load a bitmap from a file, convert it to an SDL_Surface and then close the file.

Code Examples

const char *image_path = "myimage.bmp";

/* "rb" will "read binary" files */
SDL_RWops *file = SDL_RWFromFile(image_path, "rb");

/* freesrc is true so the file automatically closes */
SDL_Surface *image = SDL_LoadBMP_RW(file, SDL_TRUE);

/* Let the user know if the file failed to load */
if (!image) {
    printf("Failed to load image at %s: %s\n", image_path, SDL_GetError());

/* Do something with image here. */

/* Make sure to eventually release the surface resource */

CategoryAPI, CategorySurface

[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.