您的位置:首页 > 移动开发 > IOS开发

ios 代码裁剪图片

2013-09-27 08:39 375 查看
之前只知道超出bounds然后通过clipToBounds进行图片的裁剪,后来明白了,这个裁剪只是将超出的部分不做显示了,但是还是那个大图,所以占用内存还是大图的

后来明白了,可以通过一下代码截取图片,图片大小就是rect指定的大小,内存就是小图的了

CGImageRef imageRef = self.imageView.image.CGImage;

CGRect rect = CGRectMake(0.0, 0.0, 600.0, 500.0);

CGImageRef imageRefRect = CGImageCreateWithImageInRect(imageRef, rect);

UIImage *imageRect = [[UIImage alloc] initWithCGImage: imageRefRect];

self.imageView.image = imageRect;

或者另一种方法:可以随意指定 宽度和高度:

UIImage *targetImage = ...;

UIGraphicsBeginImageContext(CGSizeMake(ITEMWIDTH,
ITEMHEIGHT));

[targetImage drawInRect: CGRectMake(0,
0, ITEMWIDTH, ITEMHEIGHT)];

UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); //这里就是我们想要的图片了

UIGraphicsEndImageContext();

转自:http://www.cocoachina.com/bbs/read.php?tid=98406&fpage=2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: