CGContext 给出了意想不到的线宽
Posted
技术标签:
【中文标题】CGContext 给出了意想不到的线宽【英文标题】:CGContext giving unexpected line width 【发布时间】:2013-07-08 10:34:25 【问题描述】:我正在尝试绘制 L 形,代码有效,但线条的宽度不合适,垂直线的宽度为 5 像素,有些为 3 像素,尽管我明确告诉它使用 3 像素作为线条宽度,我做错了什么?这是我的代码:
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextClearRect(ctx, rect);
CGContextAddPath(ctx, pathi);
CGContextSetStrokeColorWithColor(ctx, [UIColor redColor].CGColor);
CGContextSetLineWidth(ctx, 3.0);
CGContextSetLineCap(ctx, kCGLineCapRound);
CGContextSetShouldAntialias(ctx, NO);
CGContextStrokePath(ctx);
我已经计算了路径“pathi”路径工作正常。
【问题讨论】:
包括你如何计算路径 我正在创建简单的路径,因为我们使用 CGPathRef 绘制任意图像。 请让我们看看代码:) 【参考方案1】:线条其实并不粗,画的时候有一半的线条被截断了。 您应该应用等于宽度一半的填充(在您的情况下,3/2 => 1.5),因为绘图始终从提供的点的中间开始。
【讨论】:
以上是关于CGContext 给出了意想不到的线宽的主要内容,如果未能解决你的问题,请参考以下文章