我正在使用CGrect绘制带边框的圆圈,但我没有得到圆形的尖锐边框,这是我的代码:
CGRect rect = CGRectMake(lastPoint1.x - CircleRadius ,lastPoint1.y - CircleRadius,CircleDia,CircleDia);
CGContextSetFillColorWithColor(ctx, [Util_color getThemeColor].CGColor);
CGContextFillEllipseInRect(ctx, rect);
CGContextSetRGBStrokeColor(ctx, 255.0, 255.0, 255.0, 1.0);
CGContextStrokeEllipseInRect(ctx, rect);
CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
CGContextSetLineWidth(ctx, 3.0);
CGContextSetShouldAntialias(ctx, YES);
CGContextSetLineCap(cox,kCGLineCapRound);
但我仍然会模糊边框!有没有办法使用CGrect获得清晰的边框?
答案 0 :(得分:2)
您在像素之间进行绘制。请参阅此处获取解释和解决方法:http://orangejuiceliberationfront.com/are-your-rectangles-blurry-pale-and-have-rounded-corners/
(这是How to get a 1 pixel line with NSBezierPath?的副本,我最初写了这个解释)
答案 1 :(得分:0)
猜测OP的边界是什么意思是没有应用anti-aliasing的。
CGContextSetShouldAntialias(ctx, NO);