2013-07-08 108 views
0

我想繪製一個L形狀,代碼工作,但行不是正確的寬度,是5像素厚的垂直線,有些是3像素厚儘管我明確告訴它使用3像素作爲線寬,我做錯了什麼?這裏是我的代碼:CGContext給出意想不到的線寬

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」路徑工作正常。

+0

包括你如何計算路徑 –

+0

我創建簡單的路徑,我們創建使用CGPathRef繪製任意圖像。 – fibnochi

+0

讓我們看看代碼:) –

回答

2

這些線條實際上並不厚,一半線條在繪圖時被截斷。 您應該使用等於寬度一半的填充(您的情況爲inn,3/2 => 1.5),因爲繪圖始終從提供的點的中點開始。

相關問題