iOS UIFont详解

来源:互联网 发布:js的math.abs 编辑:程序博客网 时间:2024/05/16 18:40

UIFont继承自NSObject,用于获取和设置字体信息的接口。

1.使用任意字体名来创建UIFont类实例:

[objc] view plain copy
  1. + (UIFont *)fontWithName:(NSString *)fontName size:(CGFloat)fontSize;  
例如:

[objc] view plain copy
  1. UIFont *font = [UIFont fontWithName:@"courer-Bold" size:[UIFont labelFontSize]];  

2.获取用户偏好字体:

[objc] view plain copy
  1. + (UIFont *)preferredFontForTextStyle:(NSString *)style NS_AVAILABLE_IOS(7_0);  


3.以数组的形式返回已安装的字体名称:

[objc] view plain copy
  1. + (NSArray *)familyNames;  

4.取得可用的字型集的名称。然後你可以用这些恰当的名称去取得字体名字:

[objc] view plain copy
  1. + (NSArray *)fontNamesForFamilyName:(NSString *)familyName;  

例如:

[objc] view plain copy
  1. for (NSString* family in [UIFont familyNames])  
  2. {  
  3.     NSLog(@"%@", family);  
  4.     for (NSString* name in [UIFont fontNamesForFamilyName: family])  
  5.     {  
  6.         NSLog(@"  %@", name);  
  7.     }  
  8. }  


5.创建新字体,与当前字体相同,需要指定大小:

[objc] view plain copy
  1. - (UIFont *)fontWithSize:(CGFloat)fontSize;  


6.通过描述符返回字体:

[objc] view plain copy
  1. + (UIFont *)fontWithDescriptor:(UIFontDescriptor *)descriptor size:(CGFloat)pointSize NS_AVAILABLE_IOS(7_0);  


7.返回字体描述符:

[objc] view plain copy
  1. - (UIFontDescriptor *)fontDescriptor NS_AVAILABLE_IOS(7_0);  


UIFont的主要属性列表属性名/类型属性说明familyName
(NSString型)获得字体的family名称
例:NSString *str = font.familyName;
fontName
(NSString型)获得字体名称
例:NSString *str = font.fontName;
  pointSize
(CGFloat型)获得字体大小
例:CGFloat *f = font.pointSize;
lineHeight
(CGFloat型)获得行的高度
例:CGFloat *f = font.lineHeight;
capHeight
(CGFloat型)获得大文字的高度
例:CGFloat *f = font.capHeight;
xHeight
(CGFloat型)获得小文字[x]的高度
例:CGFloat *f = font.xHeight;
ascender
(CGFloat型)获得ascender的值
例:CGFloat *f = font.ascender;
descender
(CGFloat型)获得descender的值
例:CGFloat *f = font.descender;
UIFont的主要方法列表函数名说明+(UIFont*)systemFontOfSize:
(CGFloat)fontSize返回指定字体的标准样式
字体Size为20的标准字体
例: UIFont *font = [UIFont systemFontOfSize:20];+(UIFont*)boldSystemFontOfSize:
(CGFloat)fontSize返回指定字体的粗体样式
字体Size为20的粗体
例: UIFont *font = [UIFont boldSystemFontOfSize:20];+(UIFont*)italicSystemFontOfSize:
(CGFloat)fontSize返回指定字体的斜体样式
字体Size为20的斜体
例: UIFont *font = [UIFont italicSystemFontOfSize:20];+(CGFloat)systemFontSize返回标准字体大小
例: UIFont *font =
[UIFont systemFontOfSize:[UIFont systemFontSize]];+(CGFloat)smallSystemFontSize返回比系统标准字体小的字体大小
例: UIFont *font =[UIFont systemFontOfSize:
[UIFont smallSystemFontSize]];+(CGFloat)labelFontSize返回Label使用的标准字体大小
例: UIFont *font =
[UIFont systemFontOfSize:[UIFont labelFontSize]];+(CGFloat)buttonFontSize返回按钮使用的标准字体大小
例: UIFont *font =
[UIFont systemFontOfSize:[UIFont buttonFontSize]];+(NSArray*)familyNames返回可以使用的字体family名
例: NSArray *arr = [UIFont familyNames];

//系统标准字体定义UIFont *font = [UIFont systemFontOfSize:[UIFont systemFontSize]];//系统标准字体,Size:24字体定义UIFont *font = [UIFont systemFontOfSize:24];//斜体+小字体定义UIFont *font = [UIFont italicSystemFontOfSize:[UIFont smallSystemFontSize]];//粗体+按钮用字体 定义UIFont *font = [UIFont boldSystemFontOfSize:[UIFont buttonFontSize]];//字体名:AppleGothic、字体大小:标准UIFont *font =    [UIFont fontWithName:@"AppleGothic" size:[UIFont systemFontSize]];