CGContext画线
2014-03-26 20:12
239 查看
1 前言
得到图形环境,然后用 CGContextMoveToPoint 和 CGContextAddLineToPoint 函数来画线。
2 代码实例
ZYViewControllerView.m
[plain]
- (void)drawRect:(CGRect)rect{
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 40.0f) textToDisplay:@"Miter"
lineJoin:kCGLineJoinMiter];
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 180.0f) textToDisplay:@"Bevel"
lineJoin:kCGLineJoinBevel];
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 320.0f) textToDisplay:@"Round"
lineJoin:kCGLineJoinRound];
}
/*
paramTopPoint:一个点,顶部在这一点
textToDisplay:内显示的文字
lineJoin:要使用的接合类型
kCGLineJoinMiter
接合点为尖角。这是默认的接合类型。
kCGLineJoinBevel
接合点为斜角
kCGLineJoinRound
接合点为圆角
*/
- (void) drawRooftopAtTopPointof:(CGPoint)paramTopPoint textToDisplay:(NSString *)paramText
lineJoin:(CGLineJoin)paramLineJoin{
/*设置线条颜色*/
[[UIColor brownColor] set];
//获得当前图形上下文
CGContextRef currentContext = UIGraphicsGetCurrentContext();
//设置连接类型
CGContextSetLineJoin(currentContext, paramLineJoin);
//设置线条宽度
CGContextSetLineWidth(currentContext,20.0f);
//设置开始点位置
CGContextMoveToPoint(currentContext,paramTopPoint.x - 140, paramTopPoint.y + 100);
//设置终点
CGContextAddLineToPoint(currentContext,paramTopPoint.x, paramTopPoint.y);
//设置另一个终点
CGContextAddLineToPoint(currentContext,paramTopPoint.x + 140, paramTopPoint.y + 100);
//画线
CGContextStrokePath(currentContext);
[[UIColor blackColor] set];
/* 写文字 */
CGPoint drawingPoint = CGPointMake(paramTopPoint.x - 40.0f,
paramTopPoint.y + 60.0f);
[paramText drawAtPoint:drawingPoint withFont:[UIFont boldSystemFontOfSize:30.0f]];
}
得到图形环境,然后用 CGContextMoveToPoint 和 CGContextAddLineToPoint 函数来画线。
2 代码实例
ZYViewControllerView.m
[plain]
- (void)drawRect:(CGRect)rect{
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 40.0f) textToDisplay:@"Miter"
lineJoin:kCGLineJoinMiter];
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 180.0f) textToDisplay:@"Bevel"
lineJoin:kCGLineJoinBevel];
[self drawRooftopAtTopPointof:CGPointMake(160.0f, 320.0f) textToDisplay:@"Round"
lineJoin:kCGLineJoinRound];
}
/*
paramTopPoint:一个点,顶部在这一点
textToDisplay:内显示的文字
lineJoin:要使用的接合类型
kCGLineJoinMiter
接合点为尖角。这是默认的接合类型。
kCGLineJoinBevel
接合点为斜角
kCGLineJoinRound
接合点为圆角
*/
- (void) drawRooftopAtTopPointof:(CGPoint)paramTopPoint textToDisplay:(NSString *)paramText
lineJoin:(CGLineJoin)paramLineJoin{
/*设置线条颜色*/
[[UIColor brownColor] set];
//获得当前图形上下文
CGContextRef currentContext = UIGraphicsGetCurrentContext();
//设置连接类型
CGContextSetLineJoin(currentContext, paramLineJoin);
//设置线条宽度
CGContextSetLineWidth(currentContext,20.0f);
//设置开始点位置
CGContextMoveToPoint(currentContext,paramTopPoint.x - 140, paramTopPoint.y + 100);
//设置终点
CGContextAddLineToPoint(currentContext,paramTopPoint.x, paramTopPoint.y);
//设置另一个终点
CGContextAddLineToPoint(currentContext,paramTopPoint.x + 140, paramTopPoint.y + 100);
//画线
CGContextStrokePath(currentContext);
[[UIColor blackColor] set];
/* 写文字 */
CGPoint drawingPoint = CGPointMake(paramTopPoint.x - 40.0f,
paramTopPoint.y + 60.0f);
[paramText drawAtPoint:drawingPoint withFont:[UIFont boldSystemFontOfSize:30.0f]];
}
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- php生成图形验证码几种方法小结
- javascript中的作用域和上下文使用简要概述
- CentOS的图形安装及初始环境设置教程
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- php实现图形显示Ip地址的代码及注释
- 探讨Android与iOS,我们将何去何从?
- Android开发之图形图像与动画(五)LayoutAnimationController详解
- Java在Linux下 不能处理图形的解决办法 分享
- IOS 身份证校验详细介绍及示例代码
- iOS NSDate中关于夏令时的坑
- Objective-C 消息传递机制详解
- iOS内存错误EXC_BAD_ACCESS的解决方法
- 从 Auto Layout 的布局算法谈性能
- 浅谈 MVC、MVP 和 MVVM 架构模式
- 深入解析 ObjC 中方法的结构
- 你真的了解 load 方法么?