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

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

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

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

直立.jpg

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

拍照时获取的图片向左转90度的问题_第1张图片
躺着的我马.jpg

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

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

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    //    NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
            UIImage *image;
//我们进行这样的处理
    image = [self turnImageWithInfo:info];
//下面的就....
}
- (UIImage *)turnImageWithInfo:(NSDictionary *)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;
    
}

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

你可能感兴趣的:(拍照时获取的图片向左转90度的问题)