将图片裁剪为圆边

时间:2015-11-02 14:03:17   收藏:0   阅读:322

如何将图片的边缘裁剪为圆形?

一、 使用cornerRadius:

在IB中选中图片,在Identity面板,在User Defined Runtime Attributes下按+号按钮,添加如下键值:

技术分享

注意cornerRadius的值为20,是因为图片的大小为40,40/2=20。
然后在属性面板,勾上Clip Subviews:

技术分享

此时故事板中的图片不会有任何变化,但当你运行App时就可以看到效果:
技术分享
注意,如果ImageView的长宽不等,得到的是一个圆角矩形:

技术分享
二、 使用CAShapeLayer

先绘制一个椭圆形的CALayer,如果圆的长宽比为1就是正圆,否则就是椭圆:
let group = CGRectMake(0,0,40,40)
maskLayer=CAShapeLayer()
let maskPath = UIBezierPath(ovalInRect:group)
maskLayer.fillColor=UIColor.whiteColor().CGColor
maskLayer.path = maskPath.CGPath

然后将这个CALayer作为遮罩应用到ImageView:
imageView.layer.mask = maskLayer

得到的结果和上面类似。不同的是,如果group的长宽不等,得到的可能是椭圆形裁剪效果而不是上面的圆角矩形。

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文:http://blog.csdn.net/kmyhy/article/details/49209289

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!