2012-02-01 82 views
0

我想從UIImagePickerController中選擇一張照片,並檢查照片是否爲橫向。如果選擇的照片是橫向的,我想旋轉到縱向。 所以,這裏是我的代碼UIImageOrientationRight(左)將不起作用

- (void)imagePickerController:(UIImagePickerController *)picker 
     didFinishPickingImage:(UIImage *)image 
        editingInfo:(NSDictionary *)editingInfo { 

    if(image.imageOrientation == UIImageOrientationRight || image.imageOrientation == UIImageOrientationLeft){ 

     UIImage *retatedImg = [image imageRotatedByDegrees:90]; 

    }else { 
     UIImage *retatedImg = image; 

    } 
} 

我敢肯定[imageRotatedByDegrees:]方法是工作的罰款。只是卡住了爲什麼它不識別風景照片。幫我!

回答

2

imageOrientation屬性不引用圖像的格式。加載圖像時,該屬性的值取決於文件中的EXIF數據(如果有)。如果拍攝照片的照相機將其保存爲最終格式,則不包括用於圖像方向更改的EXIF數據。

如果您想知道該圖像格式是縱向還是橫向,請比較寬度和高度尺寸,而不是使用imageOrientation。

if(image.size.width > image.size.height) 
    UIImage *retatedImg = [image imageRotatedByDegrees:90] ; 
+0

謝謝!現在我明白了 – user842589 2012-02-01 11:40:36