- 2010年2月15日 22:55
- iPhone
先日、書いたエントリー「iPhone 画像のリサイズとトリミングなど」で、一部修正が必要なことを発見しました。
ピッカーで画像選択後にCGImageから画像の縦横サイズを取得していました。
CGImageRef imageRef = [image CGImage];
size_t w = CGImageGetWidth(imageRef);
size_t h = CGImageGetHeight(imageRef);
iPhoneのカメラで縦位置に撮影した場合の画像サイズを取得すると縦横が逆になるのです。というか、縦位置で撮影しても横位置で撮影しても、取得した画像サイズは横1600px 縦1200pxとなります。
なので、サイズ取得する前に、縦位置の画像か横位置の画像か判断してから、サイズを取得する必要があります。
[iPhone] カメラロールから読み込んだ画像のサイズに関して
size_t w,h;
if (image.imageOrientation == UIImageOrientationUp || image.imageOrientation == UIImageOrientationDown) {
// 横の場合
w = CGImageGetWidth(imageRef);
h = CGImageGetHeight(imageRef);
} else {
// 縦の場合
w = CGImageGetHeight(imageRef);
h = CGImageGetWidth(imageRef);
}
ここからどちらの辺が長いか判定すれば問題ないかと思います。
- Newer: iPhone UIPickerViewの初期値
- Older: iPhone 画像のリサイズとトリミングなど
Comments:0
Trackbacks:0
- TrackBack URL for this entry
- http://www.hirano-dept.com/mt/mt-tb.cgi/82
- Listed below are links to weblogs that reference
- iPhone カメラで縦位置で撮影した画像のサイズ from 袖触れ合うも多少の縁