iOS7新出了一个boudingRectWithSize:options:attributes:context方法 计算文本尺寸:
// NSString+Extension (扩展NSString)
- (CGSize)textSizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size {
CGSize textSize;
NSStringDrawingOptions option = NSStringDrawingUsesFontLeading;
// NSStringDrawingTruncatesLastVisibleLine如果文本内容超出指定的矩形限制,
// 文本将被截去并在最后一个字符后加上省略号
// NSStringDrawingUsesLineFragmentOrigin选项,则该选项被忽略
// NSStringDrawingUsesFontLeading计算行高时使用行间距。(译者注:字体大小+行间距=行高)
NSDictionary *attributes = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];
CGRect rect = [self boundingRectWithSize:size
options:option
attributes:attributes
context:nil];
textSize = rect.size;
return textSize;
}
转载于:https://blog.51cto.com/5934497/1652611