我已经在网上搜索过,但我无法得到一个好的答案,尽管我确信这很简单。有人可以告诉我如何执行以下操作:制作名称为“Helvetica-Bold”的 UIFont,大小为 8.0,颜色为黑色。
我有名称和大小,但我不知道如何更改颜色:
UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
谢谢!
UIFont 不包含/维护任何颜色信息,因此这是不可能的。通常,使用 UIFont 的控件(例如 UILabel)同时具有字体和 textColor 属性。所以你会设置一个标签的字体,它的颜色是这样的:
myLabel.textColor = [UIColor blackColor];
myLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
如果您正在绘制文本,您可以使用以下功能;
[text drawAtPoint:CGPointMake(x, y) withAttributes:@{ NSFontAttributeName: [UIFont systemFontOfSize:sizeOfFont], NSForegroundColorAttributeName:[UIColor redColor] }];
如果您在 OpenGL 中将字体渲染为纹理,您也可以使用CGContext* 函数,
假设您已经有一个有效的 cgcontext:
CGContextSelectFont(cgContext, "Arial", 24, kCGEncodingMacRoman);
CGContextSetRGBStrokeColor(cgContext, 1.0f, 1, 1, .5f) ;
CGContextShowTextAtPoint(cgContext, 20, 20, "HI THERE", strlen("HI THERE") ) ;
您也可以使用[myLabel setTextColor:[UIColor grayColor]];
.