iOS | Swift图片剪切圆角

我们在IOS开发中,时常需要将一些原本是方形的图片剪切成圆形或者边框是曲线的样子,表现得活泼生动一些.

注意:因为最近在尝试用Swiftl开发,所以这里的语言使用的就是Swift,OC的语法也是相近的.

这是修改之前的:

图一

然后这是修改之后的:

图二

第一种:通过图形绘制

extension UIImage{
    
    func createImage(isCornored: Bool = true,size: CGSize = CGSize.zero,backgroundColor: UIColor = UIColor.white,callBack: @escaping (_ image: UIImage) ->()) {    
//在子线程中执行
        DispatchQueue.global().async {
            let rect = CGRect(origin: CGPoint.zero, size: size)
            //1. 开启上下文
            UIGraphicsBeginImageContext(size)
            //2. 设置颜色
            backgroundColor.setFill()
            //3. 颜色填充
            UIRectFill(rect)
            //4. 图像绘制
            //切回角
            let path = UIBezierPath(ovalIn: rect)
            path.addClip()
            
            self.draw(in: rect)
            //5. 获取图片
            let image = UIGraphicsGetImageFromCurrentImageContext()
            //6 关闭上下文
            UIGraphicsEndImageContext()
            //回到主线程刷新UI
            DispatchQueue.main.async(execute: {
                callBack(image!)
            })
        }
    }
}

第二种:剪切圆角

 //设置圆角半径(通过设置这个的大小,越接近你的矩形宽度,圆的形状越明显)
            iconImageView.layer.cornerRadius = 50
            //必做的一步
            iconImageView.layer.masksToBounds = true
            //设置边框宽度
            iconImageView.layer.borderWidth = 5
            //设置边框的颜色
            iconImageView.layer.borderColor = UIColor.black

这两种方法都挺实用的,不过第二种比较简短,第一种适合用来提高自己的逼格吧.

转载于:https://www.cnblogs.com/JanChuJun/p/10102287.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值