在iOS中将UIImage转换为LandscapeRight

时间:2012-11-30 07:50:41

标签: ios xcode uiimage landscape-portrait uiimageorientation

在我的应用程序中,我将库中的不同图像添加到数组中,然后将它们转换为幻灯片放映。我能够做到这一点,但我面临的唯一问题是不同图像的方向。我想要的是,当用户从库中选择图片时,在插入数组之前,应该检查其方向,如果它不是正确的横向,则应该将其旋转到横向右侧。我怎样才能做到这一点?此外,旋转的图像应该是纵横填充,即在旋转的图像的侧面应该没有黑边。

P.S。我想旋转UIImage,而不是UIImageView,因为有一些方法可以旋转UIImageView,但它们不符合我的要求。

1 个答案:

答案 0 :(得分:3)

您可以像这样简单地旋转图像:

UIImage *newImage = [[UIImage alloc] initWithCGImage: myImage.CGImage
                                                 scale: 1.0
                                           orientation: UIImageOrientationRight];

这应该给你一个指针,而不是你可以通过比较e-g的大小来决定是否旋转图像:

if (myImage.size.width < myImage.size.height) {
   // its portrait, do the rotation
}