目次 - SDL_image 3.0 - IMG_Load

IMG_Load

画像をファイルシステムのパスからサーフェイスに読み込む

ヘッダ

SDL3_image/SDL_image.h

構文

SDL_Surface * IMG_Load(const char *file);;

引数

const char *file画像ファイルのパス名

戻り値

(SDL_Surface *) 新しいSDLサーフェイスを戻す. エラーのときNULLを戻す.

詳細

SDL_SurfaceはCPUからアクセスできるメモリ上のピクセルバッファである. 後でデータを他に渡したり, 操作する場合はこれを使うことになる.

生成されたSDL_Surfaceの形式には保証がない. 多くの場合, SDL_imageは画像と完全に一致するサーフェイスを生成しようとするが, 変換される場合もある. (SDLが直接対応していない形式の画像や, 様々な形式で圧縮されていてSDL_imageがそのうちの1つを選択した場合など.) SDL_Surfaceの形式を精査し, その後SDL_ConvertSurface()で必要な形式に変換することもできる.

画像ファイルが透過ピクセルに対応している場合, SDLはサーフェイスにカラーキーを設定する. 以下のようにすると呼び出し後にRLEアクセラレーションを有効にできる:
SDL_SetSurfaceColorKey(image, SDL_RLEACCEL, image->format->colorkey);

ファイルシステムではなく抽象I/Oからのデータが必要な場合は, SDL_IOStreamから読み込む別の関数IMG_Load_IO()も存在する.

SDLの2DレンダリングAPIを使用する場合, GPUが使用するSDL_Textureに画像を直接読み込むIMG_LoadTexture()をこの関数の代わりに使うこと.

戻されたサーフェイスを使い終えたならば, アプリケーションはSDL_DestroySurface()で破棄する必要がある.

バージョン

SDL_image 3.0.0以降

関連項目

SDL Wikiへのリンク

SDL3_image/IMG_Load