如何在iOS中裁剪图像 [英] How do you crop an image in iOS

查看:89
本文介绍了如何在iOS中裁剪图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个照片应用,你可以在一个部分添加贴纸。当你完成后我想保存图像。这是我必须要做的代码。

I have a photo app where you can add stickers in one section. When you're finished I want to save the image. Here is the code that I have to do that.

if(UIGraphicsBeginImageContextWithOptions != NULL)
{
    UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 2.5);
} else {
    UIGraphicsBeginImageContext(self.view.frame.size);
}
CGContextRef contextNew=UIGraphicsGetCurrentContext();

[self.view.layer renderInContext:contextNew];

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

现在保存的图像是图像的全屏,这很好,但现在我需要裁剪图像,我不知道如何。您可以在以下链接中看到图像:
http://dl.dropbox.com/u/19130454/Photo%202012-04-09%201%2036%2018%20PM.png

Now the image that gets saved is the full screen of the image, which is fine, but now I need to crop the image and I don't know how. You can see the image at the link below: http://dl.dropbox.com/u/19130454/Photo%202012-04-09%201%2036%2018%20PM.png

我需要裁剪:
91px从左到右
220px从底部

I need to crop: 91px from the left and right 220px from the bottom

任何帮助都将不胜感激。如果我没有清楚地解释清楚,请告诉我,我会尽力重新解释。

Any help would be greatly appreciated. If I haven't explained things clearly, please let me know and I'll do my best to re-explain.

推荐答案

这样的事情怎么样

CGRect clippedRect  = CGRectMake(self.view.frame.origin.x+91, self.view.frame.origin.y, self.view.frame.size.width-91*2, self.view.frame.size.height-220);
CGImageRef imageRef = CGImageCreateWithImageInRect([image CGImage], clippedRect);
UIImage *newImage   = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);

这篇关于如何在iOS中裁剪图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆