首先咱们来看一看UIFont的API里面有哪些属性:app
- // Font attributes
- @property(nonatomic,readonly,strong) NSString *familyName;
- @property(nonatomic,readonly,strong) NSString *fontName;
- @property(nonatomic,readonly) CGFloat pointSize;
- @property(nonatomic,readonly) CGFloat ascender;
- @property(nonatomic,readonly) CGFloat descender;
- @property(nonatomic,readonly) CGFloat capHeight;
- @property(nonatomic,readonly) CGFloat xHeight;
- @property(nonatomic,readonly) CGFloat lineHeight NS_AVAILABLE_IOS(4_0);
- @property(nonatomic,readonly) CGFloat leading;
你会发现有这么一大堆属性然而并不知道都是干吗的,不用着急,给大家看一张图就知道了:oop

如今应该大体知道各个属性都是干吗了的吧。字体
pointSize就是字体的大小,要获取字体大小就用这个属性。atom
而lineHeight是行高,当你要计算这些字所占用的高度的时候,要用这个属性。spa
有一个属性baseLine,指的就是紧贴着这些字符的那条线。.net
leading指的是若是有多行的话,两个baseline之间的距离,若是只有一行,那么这个值就是0.blog
ascender和descender意义很明确,就不说了。ip
capHeight表示最高的字符的高度。get
xHeight表示最低的字符的高度。flash
fontName表示的字体的名字,familyName会把字体名字分红几部分,用空格隔开。