UIImagePickerControllerOriginalImage,UIImagePickerControllerCropRect和UIImagePickerControllerEditedImage有何关系?

时间:2019-02-16 00:32:07

标签: swift uiimagepickercontroller

我希望有人能解释这些值之间的关系。 (我将对自己的解释进行自我回答,并观察其解释的效果如何。)

我正在开发一种功能,用户可以选择一张图像,然后提供一个方形的裁剪边界,如果需要,可以使用。

因此,我将UIImagePickerControllerallowsEditing一起使用

文档并没有特别启发->

  

指定应用于原始图像的裁剪矩形   https://developer.apple.com/documentation/uikit/uiimagepickercontroller/infokey/1619150-croprect

我正在进行边缘案例测试,所以我裁剪了一个全景图,有人将其发送给我。通过print转储数据时,以下是相关结果:

"UIImagePickerControllerOriginalImage": <UIImage: 0x6000014aed80> size {4032, 3024} orientation 1 scale 1.000000,

"UIImagePickerControllerCropRect": NSRect: {{0, 0}, {3071.9999999999995, 2307.710144927536}},

"UIImagePickerControllerEditedImage": <UIImage: 0x6000014a2290> size {826, 620} orientation 0 scale 1.000000,

1 个答案:

答案 0 :(得分:0)

我的解释是:

UIImagePickerControllerOriginalImage(4032,3024),然后用UIImagePickerControllerCropRect裁剪,从原处刮掉〜3072 x 2308以外的任何东西。

然后,最后一张图像返回为(826,620),我猜测裁剪后的法师被缩放到相应的值。 (这三个长宽比看起来都非常一致)