方法
//Resize image
- (UIImage *)resizeImage:(UIImage *)image
withQuality:(CGInterpolationQuality)quality
rate:(CGFloat)rate
{
UIImage *resized = nil;
CGFloat width = image.size.width * rate;
CGFloat height = image.size.height * rate;
UIGraphicsBeginImageContext(CGSizeMake(width, height));
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetInterpolationQuality(context, quality);
[image drawInRect:CGRectMake(0, 0, width, height)];
resized = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return resized;
}
使用
UIImageView *theImageView = [[UIImageView alloc]init];
theImageView.frame = CGRectMake(0, 64, 320, 400);
UIImage *aImage = [UIImage imageNamed:@"shenlin.png"];
UIImage *resizeImage = [self resizeImage:aImage withQuality:kCGInterpolationNone rate:0.2];
theImageView.image = resizeImage;
theImageView.frame = CGRectMake(0, 64, resizeImage.size.width, resizeImage.size.height);
NSLog(@"%@",NSStringFromCGSize(resizeImage.size));
[self.view addSubview:theImageView];