ios – 核心图形图像质量低

ios – 核心图形图像质量低,第1张

概述我是Core Graphics的新手,我试着画圆圈.它们可以是透明的(仅中风)并填充笔触颜色.所以方法看起来像这样: + (UIImage *)iconImageWithColor: (UIColor *)markColor strokeOnly:(BOOL)strokeOnly{ CGRect rect = CGRectMake(0.0f, 0.0f, 20.0f, 20.0f); 我是Core Graphics的新手,我试着画圆圈.它们可以是透明的(仅中风)并填充笔触颜色.所以方法看起来像这样:
+ (UIImage *)iconImageWithcolor: (UIcolor *)markcolor strokeOnly:(BOol)strokeOnly{    CGRect rect = CGRectMake(0.0f,0.0f,20.0f,20.0f);    UIGraphicsBeginImageContext(rect.size);    CGContextRef context = UIGraphicsGetCurrentContext();    CGPathref clipPingPath = [UIBezIErPath bezIErPathWithRoundedRect:rect cornerRadius:7.5f].CGPath;    CGContextAddpath(context,clipPingPath);    CGContextClip(context);    CGContextSetFillcolorWithcolor(context,strokeOnly == YES ? [[UIcolor clearcolor] CGcolor] : [markcolor CGcolor]);    CGContextFillRect(context,rect);    CGPathref path = CGPathCreateWithRoundedRect(rect,10.f,NulL);    [markcolor setstroke];    CGContextAddpath(context,path);    CGContextDrawPath(context,kCGPathFillstroke);    UIImage *image = UIGraphicsGetimageFromCurrentimageContext();    UIGraphicsEndImageContext();    return image;}

结果很奇怪 – 看起来图像的分辨率非常低.是否有可能使结果图像在视网膜显示器上看起来很好?

解决方法 UIGraphicsBeginImageContext创建一个比例为1的上下文,因此非视网膜.
你想要用的是

UIGraphicsBeginImageContextWithOptions(rect.size,NO,0.0f)

scale 0表示它将使用设备屏幕比例

总结

以上是内存溢出为你收集整理的ios – 核心图形图像质量低全部内容,希望文章能够帮你解决ios – 核心图形图像质量低所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1098717.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存