目次 - 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