Swift编程Swift swift

Swift_通过相册选取图片,进行裁切有黑条

2018-07-05  本文已影响69人  Mccc_

问题描述

当使用相册里面的图片,打开了allowsEditing属性,使用UIImagePickerControllerEditedImage编辑过的图片时候,图片某一个或几个边上有黑边。
出现的条件:

如图所示:


素材图片

原因

据说是iOS相册上的bug。

解决问题

还是继续打开allowsEditing,但是使用UIImagePickerControllerOriginalImage,并获取UIImagePickerControllerCropRect。 然后根据这个rect在originalImage上裁切出来一个editImage.

let originalImage : UIImage = info[UIImagePickerControllerOriginalImage] as! UIImage

let rect = info[UIImagePickerControllerCropRect] as! CGRect

let editedImage = originalImage.MCImageCrop(toRect: rect)
    // 通过rect,裁切图片
    func MCImageCrop(toRect:CGRect) -> UIImage {

        let imageRef = self.cgImage?.cropping(to: toRect)
        let image = UIImage.init(cgImage: imageRef!, scale: self.scale, orientation: self.imageOrientation)
        
        return image
    }
上一篇下一篇

猜你喜欢

热点阅读