gpt4 book ai didi

iphone - UIImage imageOrientation 返回 0

转载 作者:行者123 更新时间:2023-12-03 21:18:16 29 4
gpt4 key购买 nike

我正在 iOS 5 中开发 iPhone 应用程序。我使用 UIImagePickerController 让用户选择图像,并且我需要知道图像的方向。

当选择图像时,我有 UIImagePickerControllerDelegate 方法的以下代码:

-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
UIImage *originalImage = nil;
UIImage *editedImage = nil;

// Handle a still image picked from a photo album
if (CFStringCompare ((__bridge CFStringRef) mediaType, kUTTypeImage, 0)
== kCFCompareEqualTo) {

editedImage = (UIImage *)[info objectForKey:UIImagePickerControllerEditedImage];
originalImage = (UIImage *)[info objectForKey:UIImagePickerControllerOriginalImage];

NSLog(@"editedImage.imageOrientation = %d", editedImage.imageOrientation);
NSLog(@"originalImage.imageOrientation = %d", originalImage.imageOrientation);

imageToUse = nil;
if (editedImage)
imageToUse = editedImage;
else
imageToUse = originalImage;

}
}

有人知道为什么 NSLog 指令中的 imageOrientation 值总是 0 吗?我尝试过横向和纵向图像,结果总是相同的。

所选图像不为零,因为我在 UIImageView 中显示它没有问题。

谢谢。

最佳答案

图像方向指示图像是纵向还是横向格式。

方向指定图像数据在显示之前如何有效地转换/旋转。通常,例如,无论相机当时的方向如何,相机拍摄的图像的数据格式都是相同的。也就是说,以纵向形式拍摄的图像可以以其“原始”形式显示为旋转的横向图像(当然这取决于相机)。

为了克服这个问题,图像元数据会根据拍摄图像时相机方向的信息进行更新。有了这些信息,UIUmage 就可以根据元数据旋转图像,以正确的方式向上显示图像。

如果您需要确定图像的最终格式是纵向还是横向,只需比较宽度和高度即可:)

蒂姆

关于iphone - UIImage imageOrientation 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8209715/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com