UIImagePickerController返回的照片带有方向信息,如果直接上传到服务器的话,可能造成旋转了90°(当手机竖直拍照)的情况。而且如果直接取其jpeg数据,或者将UIImage保存到本地的话,就会丢失这个方向信息,导致下一次读取出来图片就是颠倒的。
为了让上传到服务器或者保存的本地的图片和照相时候一样,需要利用UIImage的imageOrientation将其矫正。
已经有一个开源的Category来处理这个问题,原理就是根据UIImage的imageOrientation属性反过来绘制到新的CGImage里面,然后保存为正常的UIImage。