[小技巧]自定义图片的圆角
来源:互联网 发布:网络通信运营商 编辑:程序博客网 时间:2024/05/17 06:05
主要思路:利用Quarts 2D对图片进行重新绘制。暂未考虑性能优化。
核心方法:
- (void)drawCornerImage{ /** * 利用BeezierPath绘制圆角图片区域 * * 参数一: 图片位置大小范围 * 参数二: 圆角位置 * 参数三: 圆角半径 */ UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:self.bounds byRoundingCorners:self.corners cornerRadii:CGSizeMake(self.cornerRadiu, self.cornerRadiu)]; // 因为这里是从边上裁剪的,所以设置的边框宽度要成2,因为会截去一半边框。 path.lineWidth = self.borderWidth * 2; // 如果有边框,才设置颜色 if (self.borderWidth != 0) { [self.borderColor setStroke]; } // 截取上下文区域 [path addClip]; UIImage *image = [UIImage imageNamed:self.imgName]; [image drawInRect:CGRectMake(self.borderWidth * 0.5, self.borderWidth * 0.5, path.bounds.size.width - self.borderWidth, path.bounds.size.height - self.borderWidth)]; // 先重绘图片,最后渲染边框,否则图片会覆盖边框 [path stroke];}
Demo详细地址:https://github.com/iDustPan/CustomCornerImage
0 0
- [小技巧]自定义图片的圆角
- 小图片居中的小技巧
- 自定义Toolbar的一些小技巧
- DialogFragment实现自定义布局的小技巧
- Android小技巧/获取图片的大小
- 小技巧:图片的呼吸效果
- 关于图片加载优化的小技巧
- 【Android-图片小技巧】通过给定的uri获取图片
- 改 UISearchBar 圆角的小技巧
- 获取自定义的样式属性的小技巧
- 自记android学习小tips:继承并更改UIL的RoundedBitmapDisplayer,实现自定义圆角图片
- 小技巧:图片不存在的时候的容错处理
- 小技巧:图片不存在的时候的容错处理
- 【Unity Shader】自定义材质面板的小技巧
- 【Unity Shader】自定义材质面板的小技巧
- 【Unity Shader】自定义材质面板的小技巧
- 简单易懂的自定义圆角图片
- 针对 google 图片搜索的小技巧,嘿嘿
- 初探Vue原理之view-model的数据动态双向绑定
- 文件上传之本地预览
- UGUI之ScrollRect添加响应事件后不能滑动
- iOS 实现扇形统计图
- js与flash
- [小技巧]自定义图片的圆角
- 8. String to Integer (atoi) (重要)
- HDU 2136
- 在线教育测试的相关
- Matlab GUI 鼠标响应(三)
- 小sugar呀____DAY4:总结
- 腾讯云CentOS7.0使用yum安装mysql
- 绘制圆形头像或图片
- tushare module 4 -- 基本面数据