Ios UILabel中的平滑边

Ios UILabel中的平滑边,ios,uilabel,Ios,Uilabel,我正在用它画画。需要将此图形生成PNG作为输出。这很好,但缩放时边缘和文本不是很平滑。无论如何,我可以改进这一点,我希望得到接近矢量图形的输出。下面是代码块 CGSize shadowOffset = self.shadowOffset; UIColor *txtColor = self.textColor; CGFloat outlineSize = self.outlineWidth * self.font.pointSize * 0.3; CGContextRef contextRef

我正在用它画画。需要将此图形生成PNG作为输出。这很好,但缩放时边缘和文本不是很平滑。无论如何,我可以改进这一点,我希望得到接近矢量图形的输出。下面是代码块

CGSize shadowOffset = self.shadowOffset;
UIColor *txtColor = self.textColor;

CGFloat outlineSize = self.outlineWidth * self.font.pointSize * 0.3;

CGContextRef contextRef = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(contextRef, outlineSize);
CGContextSetShouldSmoothFonts(contextRef, TRUE);
CGContextSetAllowsFontSmoothing(contextRef, TRUE);
CGContextSetLineJoin(contextRef, kCGLineJoinRound);
CGContextSetLineCap(contextRef, kCGLineCapRound);
CGContextSetShouldAntialias(contextRef, YES);
CGContextSetAllowsAntialiasing(contextRef, YES);
CGContextSetInterpolationQuality(contextRef, kCGInterpolationHigh);

CGContextSetTextDrawingMode(contextRef, kCGTextStroke);
self.textColor = self.outlineColor;
[super drawTextInRect:CGRectInset(rect, outlineSize/4, outlineSize/4)];

CGContextSetTextDrawingMode(contextRef, kCGTextFill);
self.textColor = txtColor;
[super drawTextInRect:CGRectInset(rect, outlineSize/4, outlineSize/4)];

self.shadowOffset = shadowOffset;

我也有同样的问题。似乎设置
\u label.layer.shouldRasterize=YES
\u label.contentScaleFactor=scale
可以提高一些质量。这有点过时了。是的,我按照你的建议做了,我增加了绘图上下文来处理这个问题。几个月前它对我很有效。我也有同样的问题。似乎设置
\u label.layer.shouldRasterize=YES
\u label.contentScaleFactor=scale
可以提高一些质量。这有点过时了。是的,我按照你的建议做了,我增加了绘图上下文来处理这个问题。几个月前对我来说还不错。