iOS UIImage在通过CIFilter后被旋转

我正在过滤使用相机拍摄的图像。 我通过下面的方法传递从相机中获得的图像。 我有返回的UIImage发送到UIImageView 。 由于某种原因,当它通过这种方法时,图像正在旋转。 我究竟做错了什么?

  - (UIImage *) applyFilterToImage:(UIImage *)image withFilter:(NSString *)filterName { beginImage = [[[CIImage alloc] initWithImage:image] autorelease]; context = [CIContext contextWithOptions:nil]; filter = [CIFilter filterWithName:@"CISepiaTone" keysAndValues:kCIInputImageKey, beginImage, @"inputIntensity", [NSNumber numberWithFloat:0.8], nil]; outputImage = [filter outputImage]; CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]]; UIImage *newImg = [UIImage imageWithCGImage:cgimg scale:1.0 orientation:UIImageOrientationUp]; CGImageRelease(cgimg); return scaleAndRotateImage(newImg); } 

我find了答案。 不能相信你必须做到这一切才能使其正常工作,但它的工作原理。

https://stackoverflow.com/a/8229730/703910