根据文字字体大小算出文字所占区域大小

来源:互联网 发布:澳大利亚顶级域名 编辑:程序博客网 时间:2024/05/20 11:24

/**

 *  根据文字算出文字所占区域大小

 *

 *  @param text    文字内容

 *  @param font    字体

 *  @param maxSize 最大尺寸

 *

 *  @return 实际尺寸

 */

- (CGSize)labelAutoCalculateRectWith:(NSString*)text  Font:(UIFont*)font  MaxSize:(CGSize)maxSize

{

    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStylealloc]init];

    paragraphStyle.lineBreakMode NSLineBreakByWordWrapping;

    NSDictionary * attributes =@{NSFontAttributeName:font,NSParagraphStyleAttributeName:paragraphStyle.copy};

    CGSize labelSize = [textboundingRectWithSize:maxSizeoptions:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading|NSStringDrawingTruncatesLastVisibleLineattributes:attributescontext:nil].size;

    labelSize.height=ceil(labelSize.height);

    labelSize.width=ceil(labelSize.width);

    return labelSize;

}

0 0
原创粉丝点击