改变UIImage的大小

 1 lazytable 例子
2
3 // Set appIcon and clear temporary data/image
4 UIImage *image = [[UIImage alloc] initWithData:self.activeDownload];
5
6 if (image.size.width != kAppIconHeight && image.size.height != kAppIconHeight)
7 {
8 CGSize itemSize = CGSizeMake(kAppIconHeight, kAppIconHeight);
9 UIGraphicsBeginImageContext(itemSize);
10 CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
11 [image drawInRect:imageRect];
12 self.appRecord.appIcon = UIGraphicsGetImageFromCurrentImageContext();
13 UIGraphicsEndImageContext();
14 }
15 else
16 {
17 self.appRecord.appIcon = image;
18 }
19
20 self.activeDownload = nil;
21 [image release];
22
23
24 图片缩放到指定大小尺寸
25
26 - (UIImage *)scaleToSize:(UIImage *)img size:(CGSize)size{
27 // 创建一个bitmap的context
28 // 并把它设置成为当前正在使用的context
29 UIGraphicsBeginImageContext(size);
30 // 绘制改变大小的图片
31 [img drawInRect:CGRectMake(0, 0, size.width, size.height)];
32 // 从当前context中创建一个改变大小后的图片
33 UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
34 // 使当前的context出堆栈
35 UIGraphicsEndImageContext();
36 // 返回新的改变大小后的图片
37 return scaledImage;
38 }
posted @ 2012-02-20 20:16  woainilsr  阅读(10057)  评论(0编辑  收藏  举报