[转]给UIImage添加圆角(圆角矩形),也可用于CCSprite
给UIImage添加圆角,也可用于CCSprite//给图片添加圆角显示 - (UIImage *) roundCorners: (UIImage*) img {int w = img.size.width;int h = img.size.height;CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);CGContextBeginPath(context);CGRect rect = CGRectMake(0, 0, img.size.width, img.size.height);addRoundedRectToPath(context, rect, 10, 10);CGContextClosePath(context);CGContextClip(context);CGContextDrawImage(context, CGRectMake(0, 0, w, h), img.CGImage);CGImageRef imageMasked = CGBitmapContextCreateImage(context);CGContextRelease(context);CGColorSpaceRelease(colorSpace);[img release];return [UIImage imageWithCGImage:imageMasked]; }//这是被调用的静态方法 static void addRoundedRectToPath(CGContextRef context, CGRect rect,float ovalWidth,float ovalHeight) {float fw, fh;if (ovalWidth == 0 || ovalHeight == 0) {CGContextAddRect(context, rect);return;}CGContextSaveGState(context);CGContextTranslateCTM (context, CGRectGetMinX(rect),CGRectGetMinY(rect));CGContextScaleCTM (context, ovalWidth, ovalHeight);fw = CGRectGetWidth (rect) / ovalWidth;fh = CGRectGetHeight (rect) / ovalHeight;CGContextMoveToPoint(context, fw, fh/2);CGContextAddArcToPoint(context, fw, fh, fw/2, fh, 1);CGContextAddArcToPoint(context, 0, fh, 0, fh/2, 1);CGContextAddArcToPoint(context, 0, 0, fw/2, 0, 1);CGContextAddArcToPoint(context, fw, 0, fw, fh/2, 1);CGContextClosePath(context);CGContextRestoreGState(context); } 经测验,可以正常使用。
转载于:https://www.cnblogs.com/ygm900/archive/2013/05/18/3085480.html
[转]给UIImage添加圆角(圆角矩形),也可用于CCSprite相关推荐
- Qt项目中,绘制只有两个圆角的矩形及QPainterPath类的应用
总第39篇 本文主要梳理总结了在Qt项目开发过程中,某些特殊场合绘制只有两个圆角矩形的方法,并在此基础上详细介绍了类QPainterPath的用法. 1.两个圆角矩形的绘制方法 在Qt项目中,绘制只有 ...
- QML Shape实现任意圆角Rectangle矩形
前言 QML中有时候需要实现一些特殊定制化页面,比如不同的圆角矩形,如果直接用Rectangle控件定义radius圆角属性,会将四个角统一设置成一样的圆角,但是如果仅仅只想实现两个圆角效果,另外两个 ...
- 微信小程序:swiper轮播图添加外层圆角
微信小程序:swiper轮播图添加外层圆角 .swiper-wrap{overflow: hidden;border-radius: 8rpx;box-sizing: border-box;width ...
- html 图片左上角圆角,圆角
圆角是用一段与角的两边相切的圆弧替换原来的角,圆角的大小用圆弧的半径表示.在网页设计越来越精美的今天,圆角的应用已经越来越广泛. 中文名 圆角 外文名 Fillet 释 义 一段与角的两边相切的 ...
- android fresco 圆角,圆角和圆圈
应用经常需要让图片有圆角或者直接变成圆形来显得更加好看,Drawee 可以轻松支持圆角显示,并且显示圆角时,并不复制和修改Bitmap对象,那样太耗费内存. 圆角 圆角实际有2种呈现方式: 圆圈 - ...
- Maya: 菜单 编辑NURBS 曲面圆角圆角混合工具
编辑NURBS >曲面圆角>圆角混合工具 可以使用手柄直接选择等参线.曲面曲线或修剪边界来定义想要倒角的位置.
- 如何给机械臂添加hande机械爪并应用于moveit
如何给机械臂添加hande机械爪并应用于moveit 1.从源码下载hande机械爪文件: 2.更改srv文件 3.更改gripper_node.py 4.通过clien和service控制机械爪: ...
- swift:使用协议protocol设置颜色,UIImage的切圆角ImageWithCornerRadius
//使用协议 方便以后切换颜色配置文件.或者做主题配色之类乱七八糟产品经理最爱的功能 protocol V2EXColorProtocol{ var v2_backgroundColor: UICol ...
- D3.js 绘制带圆角的矩形 + 带箭头的指示线
目录 1. 添加带箭头的标线 2. 设置单个矩形盒子的宽高.偏移缩放效果 3. 添加 svg 元素,设置首次加载位置 4. 设置每个盒子纵横向的间距 5. 绘制矩形外层 box 6. 绘制矩形内层 b ...
最新文章
- Java开发微信公众号(四)---微信服务器post消息体的接收及消息的处理
- 2015快捷键在哪里设置_炒股软件的选择通达信软件的基本设置
- 程序人生:程序员成熟的标志
- 阿里云学生轻量级应用服务器安装MySQL
- 《设计模式详解》笔记目录
- Akka适用于分布式系统《five》译
- java学习(三)内部类
- ExtJS(5)- Ext5的统计图Chart
- aix系统vi修改命令_aix系统VI编辑器的操作
- 欺骗的艺术.资料搜集自互联网.
- php将数组打印到txt文件
- Kotlin for Android (let、with、run、apply、also函数)
- CPU内部原理,一文解析
- 2013年节假日放假安排时间表
- QQ/微信 聊天表情显示原理
- 视觉SLAM笔记(64) 八叉树地图
- 2019年北理工计算机北航计算机中山大学计算机北邮网研院保研夏令营
- 从音频提取音高以及音符
- 火狐主页被360导航篡改(360安全卫士中的主页防护导致的)
- 卫星导航系统的发展历史
热门文章
- 第三阶段:2.产品运营:4.活动运营
- [转载 整理]C语言链表实例
- 【转】找到 MySQL 数据库中的不良索引
- XNA游戏开发之(六)——保存游戏数据
- 安卓开发37:自定义的HorizontalScrollView类,使其pageScroll的时候焦点不选中
- bootstrap 栅栏系统
- Hadoop HDFS概念学习系列之熟练掌握HDFS的Shell访问(十五)
- Python常用网页字符串处理技巧
- c# 使用Autodesk design Review API
- [redis] Redis 常用命令