iPhone 上的斜体、粗体和下划线字体

21

如何将字体设置为粗体和斜体?有boldSystemFontOfSize和italicSystemFontOfSize等方法,但我找不到同时设置字体为斜体和粗体的方法。

作为第二个问题,有没有办法在字体上设置下划线,或者只能在文本下面画一条线。

2个回答

58

你实际上需要请求一个加粗或者斜体的字体版本。例如:

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

为了获取iPhone上所有可用的内容列表,在applicationDidFinishLaunching:委托方法中加入以下代码片段并查看日志输出:

for (NSString *family in [UIFont familyNames]) {
    NSLog(@"%@", [UIFont fontNamesForFamilyName:family]);
}

注意:有些字体名称中会出现“oblique”一词-这与“italic”相同。

我看不到内置的方法来加下划线 - 你可能需要自己画线。


1
一个很棒的代码片段,可以找到所有的字体名称.. :-) - jcpennypincher
4
斜体和倾斜字体不是相同的。 倾斜字体仅仅是字体被倾斜了。它并不真正是一种风格,而只是一种转换/扭曲。而斜体则是一种经过设计的风格:请注意 Times New Roman 和 Times New Roman Italic 之间的区别(斜体不仅仅是倾斜)。大多数无衬线字体没有斜体(只有倾斜),但是有一些有斜体,它们与其非斜体亲戚明显不同。 - Jakob Jingleheimer
很好。除了返回日志输出之外,是否有关于字体和组合的在线参考? - Antony Stubbs

0

我最近写了一篇关于UIFont API限制及其解决方法的博客文章。 您可以在http://eclipsesource.com/blogs/2012/07/26/uifont-from-a-css-definition/中查看。

使用我提供的代码,您可以轻松地获取所需的系统UIFont,如下所示:

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接