//调用该方法返回圆形UIImage
-( UIImage *)getEllipseImageWithImage:( UIImage *)originImage
{
if (!originImage) {
}
CGFloat padding = 5 ; // 圆形图像距离图像的边距
UIColor * epsBackColor = [ UIColor grayColor ]; // 图像的背景色
CGSize originsize = originImage. size ;
CGRect originRect = CGRectMake ( 0 , 0 , originsize. width , originsize. height );
UIGraphicsBeginImageContext (originsize);
CGContextRef ctx = UIGraphicsGetCurrentContext ();
// 目标区域。
CGRect desRect = CGRectMake (padding, padding,originsize. width -(padding* 2 ), originsize. height -(padding* 2 ));
// 设置填充背景色。
CGContextSetFillColorWithColor (ctx, epsBackColor. CGColor );
UIRectFill (originRect); // 真正的填充
// 设置椭圆变形区域。
CGContextAddEllipseInRect (ctx,desRect);
CGContextClip (ctx); // 截取椭圆区域。
[originImage drawInRect :originRect]; // 将图像画在目标区域。
UIImage * desImage = UIGraphicsGetImageFromCurrentImageContext ();
UIGraphicsEndImageContext ();
return desImage;
}
//使用以下代码,可将UIImageView变成圆形
self.testView.layer.masksToBounds=YES;
self.testView.layer.cornerRadius=self.testView.frame.size.height/2
self.testView.backgroundColor = [UIColor redColor];