iOS设置富文本行间距、字间距
生活随笔
收集整理的這篇文章主要介紹了
iOS设置富文本行间距、字间距
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Demo下載地址
我們在展示文字信息時,經常會碰到換行自適應高度的文本,這時我們會發現換行之后,文本之間的行間距依然很小,導致看起來很擁擠,影響美觀。因此以下代碼就是來解決這些問題,新建一個NSString的類別,貼出如下代碼:
1、調整行間距,字間距
/** 設置行間距和字間距** @param string 字符串* @param lineSpace 行間距* @param kern 字間距* @param font 字體大小** @return 富文本*/ - (NSAttributedString *)getAttributedWithString:(NSString *)string WithLineSpace:(CGFloat)lineSpace kern:(CGFloat)kern font:(UIFont *)font{NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];//調整行間距paragraphStyle.lineSpacing = lineSpace;NSDictionary *attriDict = @{NSParagraphStyleAttributeName:paragraphStyle,NSKernAttributeName:@(kern),NSFontAttributeName:font};NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:string attributes:attriDict];return attributedString; }2、自適應高度
/* 獲取富文本的高度** @param string 文字* @param lineSpace 行間距* @param kern 字間距* @param font 字體大小* @param width 文本寬度** @return size*/ - (CGSize)getAttributionHeightWithString:(NSString *)string lineSpace:(CGFloat)lineSpace kern:(CGFloat)kern font:(UIFont *)font width:(CGFloat)width {NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];paragraphStyle.lineSpacing = lineSpace;NSDictionary *attriDict = @{NSParagraphStyleAttributeName:paragraphStyle,NSKernAttributeName:@(kern),NSFontAttributeName:font};CGSize size = [string boundingRectWithSize:CGSizeMake(width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:attriDict context:nil].size;return size; }
總結
以上是生活随笔為你收集整理的iOS设置富文本行间距、字间距的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java毕设项目智慧商店管理系统计算机(
- 下一篇: 大厂之路一由浅入深、并行基础、源码分析一