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]];
}