UIImagePickerController didFinishPickingMediaWithInfo 方向

Posted

技术标签:

【中文标题】UIImagePickerController didFinishPickingMediaWithInfo 方向【英文标题】:UIImagePickerController didFinishPickingMediaWithInfo Orientation 【发布时间】:2012-03-07 09:51:48 【问题描述】:

在使用 iPhone 4s 的 ios 5 上,我尝试使用 UIImagePickerController 从相机胶卷中挑选照片。我遇到的问题是我选择的图像始终具有以下属性(无论图像是纵向还是横向):

image.size.width = 3264
image.size.height = 2448
image.orientation = UIImageOrientationUp

从 didFinishPickingMediaWithInfo 返回的 UIImage 似乎无法让我访问照片的方向。

除了 UIImage.UIImageOrientation 之外,UIImageView 是否使用其他东西来指定横向或纵向照片?

我没有使用 UIImageView 来显示照片,所以我需要弄清楚 UIImageView 正在做什么来纠正方向。

谢谢

【问题讨论】:

【参考方案1】:

阅读:UIImagePickerController Image Orientation

我在选择图像后使用 UIImage+Resize 类别来获得正确的方向

【讨论】:

感谢 Hanon 这有所有的答案vocaro.com/trevor/blog/2009/10/12/… 还有这个! eran.sandler.co.il/2011/11/07/…【参考方案2】:

就我而言,我使用的是不保留方向信息的 CGImage。

【讨论】:

【参考方案3】:

如果 image.size.width / image.size.height > 1 则为横向图像

如果 image.size.width / image.size.height

【讨论】:

感谢卡皮尔的回复,这是问题所在。无论图像是横向还是纵向,宽度始终为 3264,高度始终为 2448。 方向与宽度和高度无关,UIImageOrientation有八个不同的值,不只是纵向和横向。

以上是关于UIImagePickerController didFinishPickingMediaWithInfo 方向的主要内容,如果未能解决你的问题,请参考以下文章

UIImagePickerController、自定义 UIButton 和 AutoLayout

UIImagePickerController 实况照片

OCMock 模拟 UIImagePickerController

UIImagePickerController 图像没有改变

无法弹出 UIImagePickerController

为dismissModalViewControllerAnimated设置一个委托