Frank Schmitt

1pod
The UIImagePickerController class includes a parameter (allowsEditing) that lets the user move and scale the image and crop it to a square shape.
作为UIImagePickerControllerDelegate协议一部分返回的信息字典包括了图像的“编辑”版本,但其分辨率限制在一个相对较小的尺寸。
然而,该字典还包括了一个指向全分辨率图像的指针以及UIImagePickerControllerCropRect键的值,它是一个CGRect,对应用户所选的区域。
不幸的是,从设备相机中抓取图像块并不是完全简单的事情,因为图像数据总是以设备的原始方向存储,并用标志指示在显示之前应该旋转。
因此,需要一些低级的CoreGraphics技巧来在选中相关区域并将其绘制到CGContext之前旋转和转换图像。
此类别在UIImage上执行此操作是为了以可能的最高分辨率创建裁剪图像。
许可:MIT