UIImagePickerController中错误的裁剪图像

时间:2019-03-19 17:37:58

标签: ios uiimagepickercontroller

我正在使用UIImagePickerController属性为allowsEditing的{​​{1}}:

let imagePickerController = UIImagePickerController()
imagePickerController.delegate = self
imagePickerController.allowsEditing = true
imagePickerController.sourceType = .photoLibrary

present(imagePickerController, animated: true, completion: nil)

我的问题是,当我为图像选择裁剪区域时,结果图像是错误的。

这是我选择的:

enter image description here

但是,这是我得到的图像:

enter image description here

您可以看到图像是错误的,尤其是底部和右侧的尺寸。

在我的UIImagePickerControllerDelegate方法中,我这样:

imageView.image = info[.editedImage] as? UIImage

以下是info词典中的一些数据:

let originalImage = info[.originalImage] as? UIImage
let editedImage = info[.editedImage] as? UIImage
let cropRect = (info[.cropRect] as? NSValue)!.cgRectValue

NSLog("originalImage size: \(originalImage!.size)")
NSLog("editedImage size:   \(editedImage!.size)")
NSLog("cropRect size: \(cropRect)")```

这给了我

originalImage size: (2320.0, 3088.0)
editedImage size:   (1242.0, 1242.0)
cropRect size: (211.0, 557.0, 2309.0, 2309.0)

如果有人可以看到这些数字中的逻辑,我很想听听。裁剪区域的大小不应该与编辑图像的大小相同吗?

PS:我已经看到了一些有关作物尺寸错误的问题,但它们都与状态栏问题有关,并且只是垂直的(即像我的一样,右侧没有黑条)。

0 个答案:

没有答案