获取string的宽度和高度(size)

2022-09-19  本文已影响0人  林希品

.h

/// 获取string的宽度和高度(size)
/// @param string 字符串
/// @param font 字符大小
/// @param maxWidth 最大的宽度
+ (CGSize)sizeWithString:(NSString *)string font:(UIFont *)font maxWidth:(CGFloat)maxWidth;

.m

+ (CGSize)sizeWithString:(NSString *)string font:(UIFont *)font maxWidth:(CGFloat)maxWidth {
    // 获取文字样式
    NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
    attrs[NSFontAttributeName] = font;
    
    // 根据文字样式计算文字所占大小
    // 文本最大宽度
    CGSize maxSize = CGSizeMake(maxWidth, MAXFLOAT);
    
    // NSStringDrawingUsesLineFragmentOrigin -> 从头开始
    return [string boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attrs context:nil].size;
}
上一篇下一篇

猜你喜欢

热点阅读