[我正在尝试以4:3的比例旋转PNG格式的下载图像,并保持横向。
我需要将图像旋转90度,以使其具有相同尺寸的肖像。
我尝试了.transform函数,该函数最初开始工作,但是在添加带有大量设置以允许它缩放和滚动的scrollView之后,不再使用了,我宁愿不走那条编辑srollView内容的过程需要很长时间才能使所有约束正常工作以允许自由缩放和平移。
下载图像后,我将其保存到应用文件中。然后将其加载以在其他功能中显示。
是否可以在保存的同时旋转下载的文件,以便可以正确的方式对其进行检索?
[我在另一篇文章中发现了这一点,我相信它可以与下载的图像一起使用,如何根据需要更改方向?
func normalizedImage() -> UIImage
{
if (self.imageOrientation == UIImageOrientation.Up) {
return self;
}
UIGraphicsBeginImageContextWithOptions(self.size, false, self.scale);
let rect = CGRect(x: 0, y: 0, width: self.size.width, height: self.size.height)
self.drawInRect(rect)
let normalizedImage : UIImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext();
return normalizedImage;
}
如果在图像视图中显示UIImage,则可以尝试修改方向。它基本上是相同的UIImage,但带有由UIImageView解释以旋转图像显示的标志。
let rotated = UIImage(cgImage: image.cgImage!, scale: 1, orientation: .right)
如果您确实要将新图像保存到磁盘,则需要重新绘制图像。一些信息已经在这里可用:How to Rotate a UIImage 90 degrees?