iphone中剪裁图片之后会旋转

在开发的应用程序中有一个功能是剪裁UIImage,但是我实现剪裁之后,最后的图片方向就会改变,图片旋转。这个问题是怎么回事?下面是我的剪裁代码:

CGRect visibleRect;
float scale = 1.0f/scrollView.zoomScale;
visibleRect.origin.x = scrollView.contentOffset.x * scale;
visibleRect.origin.y = scrollView.contentOffset.y * scale;
visibleRect.size.width = scrollView.bounds.size.width * scale;
visibleRect.size.height = scrollView.bounds.size.height * scale;
finalImage = imageFromView(displayImageView.image, &visibleRect);

UIImage* imageFromView(UIImage* srcImage, CGRect* rect) {
    CGImageRef cr = CGImageCreateWithImageInRect(srcImage.CGImage, *rect);
    UIImage* cropped = [UIImage imageWithCGImage:cr];

    CGImageRelease(cr);
    return cropped;
}

请帮我指出错误在哪里,O(∩_∩)O谢谢。

坐标系不同.
UIView是已左上角为0,0坐标.
CG开头的函数是使用正常的坐标系,也就是左下角为0,0的.
我就不给你改代码了,你要么重新设计剪裁时0,0坐标的统一.
要么你就操作完毕后将图片颠倒一下,类似下面的方法.

imageView.transform = CGAffineTransformMakeRotation(M_PI);