如何在不打扰字体大小和姓氏的情况下将粗体设置为标签?

时间:2012-06-07 11:38:54

标签: iphone objective-c xcode uifont

我想将所选标签设置为粗体,而不实现字体系列粗体版本。 例如: - 设置粗体的默认方式如下

UIFont *myFont = [UIFont fontWithName:@"Helvetica-BoldOblique" 
                                 size:[UIFont systemFontSize]];

但我只想更改字体粗细(即BOld,Italic或Underline)。没有调用“fontWithName”。

提前致谢

4 个答案:

答案 0 :(得分:1)

你运气不好。对于非系统字体,您必须使用fontWithName来获取粗体版本。来自UIFont的文档:

  

的fontName
  完全指定的字体名称。此名称包含字体系列名称和字体的特定样式信息。

可能的解决方法:
因此,虽然您不能使用将每个字体切换为 bold 的通用方法,但您仍然可以通过维护一组字符串常量来实现此功能,您可以查找这些字符串常量以切换到正确的粗体版本您在应用中使用的字体。

答案 1 :(得分:1)

我最近写了一篇关于该主题的博客文章。 您可以在http://eclipsesource.com/blogs/2012/07/26/uifont-from-a-css-definition/

看到它

使用我在那里提供的代码,您可以轻松获得所需的UIFont:

UIFont *myFont = [FontResolver fontWithDescription:@"font-family: Helvetica; font-weight: bold; font-style: italic;"];

答案 2 :(得分:0)

labelName.font=[UIFont boldSystemFontOfSize:[UIFont systemFontSize]];

使用此声明可以帮助您

答案 3 :(得分:0)

如果您需要系统字体(Helvetica Neue),则可以使用boldSystemFontOfSize:。否则,您将无法在字体名称中指定粗体。有关详细信息,请参阅UIFont参考。