UILabel设置行间距和字间距并计算高度-b

Posted qigemingnan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UILabel设置行间距和字间距并计算高度-b相关的知识,希望对你有一定的参考价值。

#define UILABEL_LINE_SPACE 6

 

#define HEIGHT [ [ UIScreen mainScreen ] bounds ].size.height

 

//给UILabel设置行间距和字间距

-(void)setLabelSpace:(UILabel*)label withValue:(NSString*)str withFont:(UIFont*)font {

    NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStylealloc] init];

    paraStyle.lineBreakMode =NSLineBreakByCharWrapping;

    paraStyle.alignment =NSTextAlignmentLeft;

    paraStyle.lineSpacing = UILABEL_LINE_SPACE; //设置行间距

    paraStyle.hyphenationFactor = 1.0;

    paraStyle.firstLineHeadIndent =0.0;

    paraStyle.paragraphSpacingBefore =0.0;

    paraStyle.headIndent = 0;

    paraStyle.tailIndent = 0;

    //设置字间距 NSKernAttributeName:@1.5f

    NSDictionary *dic [email protected]{NSFontAttributeName:font,NSParagraphStyleAttributeName:paraStyle,NSKernAttributeName:@1.5f
};

    

    NSAttributedString *attributeStr = [[NSAttributedStringalloc] initWithString:strattributes:dic];

    label.attributedText = attributeStr;

}

 

//计算UILabel的高度(带有行间距的情况)

-(CGFloat)getSpaceLabelHeight:(NSString*)str withFont:(UIFont*)font withWidth:(CGFloat)width {

    NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStylealloc] init];

    paraStyle.lineBreakMode =NSLineBreakByCharWrapping;

    paraStyle.alignment =NSTextAlignmentLeft;

    paraStyle.lineSpacing = UILABEL_LINE_SPACE;

    paraStyle.hyphenationFactor = 1.0;

    paraStyle.firstLineHeadIndent =0.0;

    paraStyle.paragraphSpacingBefore =0.0;

    paraStyle.headIndent = 0;

    paraStyle.tailIndent = 0;

    NSDictionary *dic [email protected]{NSFontAttributeName:font,NSParagraphStyleAttributeName:paraStyle,NSKernAttributeName:@1.5f
};

    

    CGSize size = [strboundingRectWithSize:CGSizeMake(width,HEIGHT) options:NSStringDrawingUsesLineFragmentOriginattributes:dic context:nil].size;

    return size.height;

}

以上是关于UILabel设置行间距和字间距并计算高度-b的主要内容,如果未能解决你的问题,请参考以下文章

(转)iOS学习——UIlabel设置行间距和字间距

CSS设置行间距和字间距

通过富文本的方式添加行间距和字间距

ios设置行间距和部分文本颜色

怎么调整行间距

IOS 富文本 ,设置行间距字间距,计算高度(转载组合而成)