iOS使用Core Graphics和UIBezierPath绘画
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了iOS使用Core Graphics和UIBezierPath绘画,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1287字,纯文字阅读大概需要2分钟。
内容图文
通过UIView的子类的- (void)drawRect:(CGRect)rect 函数可用对视图进行重新绘画;
要重新绘画可以通过Core Graphics和UIBezierPath来实现。
1.通过Core Graphics函数来绘画
首先要通过UIGraphicsGetCurrentContex()函数获取当前绘画上下文;
然后设定起点,增加线到一个点,,,,,闭合,例如下面:
// 获取当前绘画上下文 CGContextRef context= UIGraphicsGetCurrentContext(); //设定绘画的起点,如果要绘制的部分超出当前绘画上下文的边界frame,超出部分会被剪切 CGContextMoveToPoint(context, -20, -10); //增加一条线到点100,200 CGContextAddLineToPoint(context, 100, 200); CGContextAddLineToPoint(context, 0, 200); //闭合线到起点 CGContextClosePath(context); //这里是描边,这里不可以缺少,否则绘画不起作用,之前的操作看起来更像是为下面的绘制做准备,只有下面这一步执行了才会成功 CGContextStrokePath(context);
效果图:
2.NSStirng,UIImage,可以直接在当前上下文绘制
UIImage * card = [UIImage imageNamed:@"cardback"]; [card drawAtPoint:CGPointMake(-10, -10)]; [@"hello CGcontext" drawAtPoint:CGPointMake(10, 220) withAttributes:nil];
效果图:
3.UIBezierPath 绘画
UIBezierPath * path = [[UIBezierPath alloc] init]; [path moveToPoint:CGPointMake(10, 10)]; [path addLineToPoint:CGPointMake(10, 100)]; [path addLineToPoint:CGPointMake(200, 100)]; [path closePath]; //这里是描边,这里不可以缺少,否则绘画不起作用,之前的操作看起来更像是为下面的绘制做准备,只有下面这一步执行了才会成功 [path stroke];
UIBezierPath和Core Graphics函数绘制差不多,只不过不用当前上下文就可以直接绘制;一般情况下都是使用UIBezierPath来绘制,
只有在UIBezierPath不能实现时才用Core Graphics函数。
效果图:
原文:http://www.cnblogs.com/panxiaochun/p/5096815.html
内容总结
以上是互联网集市为您收集整理的iOS使用Core Graphics和UIBezierPath绘画全部内容,希望文章能够帮你解决iOS使用Core Graphics和UIBezierPath绘画所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。