目次 - 3.関数 - 3.2読み込み - IMG_Load

IMG_Load

SDL_Surface *IMG_Load(const char *file)

file
サーフェイスに読み込む画像ファイルの名前

画像を読み込んで新しいサーフェイスを生成する. この関数は実際にはIMG_LoadTyped_RW関数でファイルを読み込んでいる. この関数は対応する全ての画像を読み込める. TGA形式もファイル名が".tga"で終わるならば読み込める. この関数はイベントループの外で呼び, 読み込んだ画像は使わなくなるまで保持するのが望ましい. ディスクの読み込みと画像のサーフェイスへの展開はそれほど速くないためである. 必要がなくなったとき, この関数が戻したサーフェイスのポインタに対してSDL_FreeSurfaceを呼ぶのを忘れてはならない.

メモ: 画像ローダーは初期化されている必要がある. もしあらかじめIMG_Initで初期化されていなければ, 最初に画像を読み込もうとしたときに初期化を試みる.

メモ: 透過ピクセルに対応した形式の画像ならば, SDL_imageはサーフェイスのカラーキーを設定する. 次のようにするとサーフェイスのRLEアクセラレーションを有効にできる:
SDL_SetColorKey(image, SDL_RLEACCEL, image->format->colorkey);

戻り値: 新しいSDL_Surfaceへのポインタを戻す. 対応していない形式, ファイルの読み込みに失敗したときなどはNULLを戻す.

サンプルコード

// sample.pngをimageに読み込む
SDL_Surface *image;
image=IMG_Load("sample.png");
if(!image) {
    printf("IMG_Load: %s\n", IMG_GetError());
    // ここでエラー処理を行う
}

参照

IMG_Init, IMG_Load_RW, IMG_LoadTyped_RW

原文へのリンク

3.2.1 IMG_Load