答案就是:画
性能高
可以给UIImage
添加一个分类UIImage+Extension
分类中增加一个返回圆形图片的方法,扩展性强
#import <UIKit/UIKit.h>
#import "UIImage+Extension.h"
@interface UIImage (Extension)
- (UIImage *)circleImage;
@end
@implementation UIImage (Extension)
- (UIImage *)circleImage
{
// 开始图形上下文
UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0);
// 获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext();
// 设置一个范围
CGRect rect = CGRectMake(0, 0, self.size.width, self.size.height);
// 根据一个rect创建一个椭圆
CGContextAddEllipseInRect(ctx, rect);
// 裁剪
CGContextClip(ctx);
// 将原照片画到图形上下文
[self drawInRect:rect];
// 从上下文上获取剪裁后的照片
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
// 关闭上下文
UIGraphicsEndImageContext();
return newImage;
}
具体使用:
// 获得的就是一个圆形的图片
UIImage *placeHolder = [[UIImage imageNamed:@"defaultUserIcon"] circleImage];
文/YotrolZ(简书作者)原文链接:http://www.jianshu.com/p/068d6f493547#著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。