拍照时获取的图片向左转90度的问题

前面发了一篇文,做的图片剪裁,在用的时候呢会出现这样的问题,
在这个代理方法里面

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

我们获取的图片类型为 UIImagePickerControllerOriginalImage
然后呢。。。。

直立.jpg

我们想要的效果是这样的,然而.....

躺着的我马.jpg

得到的结果是这样的,我想表达的大概就是这个意思,你就想这站立和左边侧躺的感觉吧。

so..................................................
肿么办呢,你只需要这样这样

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    //    NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
            UIImage *image;
//我们进行这样的处理
    image = [self turnImageWithInfo:info];
//下面的就....
}
- (UIImage *)turnImageWithInfo:(NSDictionary<NSString *,id> *)info {
    UIImage *image=[info objectForKey:UIImagePickerControllerOriginalImage];
    //类型为 UIImagePickerControllerOriginalImage 时调整图片角度
    NSString *type = [info objectForKey:UIImagePickerControllerMediaType];
    if ([type isEqualToString:@"public.image"]) {
        UIImageOrientation imageOrientation=image.imageOrientation;
        if(imageOrientation!=UIImageOrientationUp) {
            // 原始图片可以根据照相时的角度来显示,但 UIImage无法判定,于是出现获取的图片会向左转90度的现象。
            UIGraphicsBeginImageContext(image.size);
            [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];
            image = UIGraphicsGetImageFromCurrentImageContext();
            UIGraphicsEndImageContext();
        }
    }
    return image;
    
}

试试吧,这样杂家的龙马就✧(≖ ◡ ≖✿)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 许多人对幸福的定义都不一样,标准也不一样,我们也不必在乎别人是否会赞同,重要的是自己满足与否。 ...
    娜里楚倩阅读 2,532评论 0 0
  • 随机模式听歌,如果播放的歌曲正好为你所想,要赶紧许愿哦,会实现哒,比转发锦鲤成功率高多了
    草莓lily爽阅读 891评论 0 0
  • 前几天写公司的SpreadJS控件的测试用例时遇到一个需求,不通过input标签的type=file的形式来实现本...
    Mescal川阅读 16,760评论 0 12
  • 他是辰国赫赫有名的大将军,少年时征战沙场,金甲披身,战功无数国称战神。 她是翎国艳鸾天下的舞姬,倾国倾城之貌,却总...
    竹子开开阅读 3,712评论 10 12