2009年

[iPhone] カメラロールから読み込んだ画像のサイズに関して このエントリーを含むはてなブックマーク

iPhone/iPod touch Add comments

UIImagePicker でカメラロールから読み込んだ画像のサイズで少しはまったのでメモしておきます。twitter でつぶやいた@AppleWalker さんにアドバイス頂きました。ありがとうございます。

カメラロールから取得した UIImage だと縦長の写真も、サイズを見ると横長になっています。
サイズは下記のようにして調べました。

CGImageRef imageRef = [image CGImage];
size_t w = CGImageGetWidth(imageRef);
size_t h = CGImageGetHeight(imageRef);

写真の向きを調べるには以下のようにします。

size_t w,h;
if (image.imageOrientation==UIImageOrientationUp ||
    image.imageOrientation==UIImageOrientationDown) {
    // 横位置
    size_t w = CGImageGetWidth(imageRef);
    size_t h = CGImageGetHeight(imageRef);
} else {
    // 縦位置
    size_t w = CGImageGetHeight(imageRef);
    size_t h = CGImageGetWidth(imageRef);
}

※UIImageOrientationUpMirrored or UIImageOrientationDownMirrored とかも比較すべきかもしれません。

iPhone に保存されているデータとしては、縦位置で撮っても横位置で撮ってもデータとしては縦と横のサイズは変わらないということですね。

関連する投稿

2 Responses to “[iPhone] カメラロールから読み込んだ画像のサイズに関して”

  1. AppleWalker Says:

    こんにちは。
    昼間は会社だったのでたいしたことを言えなくてすみません。
    でも、たぶんあれくらいで全てを理解されてしまう方だと思ってました。
    やはり、さすがです。
    私の方が、サイトを拝見させていただいて参考にさせていただいてるくらいですので。w
    少しは、お役に立てたみたいなのでうれしいです。
    twitterでも、またよろしくお願いしますね。(^^)/

  2. matsuura Says:

    いえいえ、助かりました。
    写真関係はあまりいじったことがなかったので。

    今後ともよろしくお願い致します。

Leave a Reply

Additional comments powered by BackType

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS ログイン