iOS-文字行高

UILabel設(shè)置富文本行高:

UI標(biāo)注多是以2倍為標(biāo)準(zhǔn),如果2倍下行高是48,1倍行高就是24,24-字號就是代碼中l(wèi)ineSpacing的值

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text];    
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:(lineSpacing-(label.font.lineHeight - label.font.pointSize))];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [text length])];
label.attributedText = attributedString;

paragraphStylelineSpacing是指第一行文字與第二行文字的行間距(這個(gè)行間距包括文字的留白區(qū)域),如果直接設(shè)置:

[paragraphStyle setLineSpacing:lineSpacing];

實(shí)際行高是大于UI的行高的,所以需要減去自帶的留白,重新設(shè)置行間距(完整代碼如上)。

之所以會大于UI要求的行高,原因如下:


image.png

具體解釋與說明請參考:
iOS行距與行高

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、通過CocoaPods安裝項(xiàng)目名稱項(xiàng)目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地?cái)?shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,172評論 3 119
  • 就這樣,埋下一顆種子 初三(15)班 吳霜 天已入冬了,像是為了躲避寒冷,太陽...
    且向洞庭賒月色閱讀 9,259評論 0 6
  • 今天參加了樊登讀書會夜成長課堂,本期課程為《贏在溝通力》,今天是第一節(jié)課,分為兩小節(jié),題目分別是互聯(lián)網(wǎng)時(shí)代“心”管...
    今天安好閱讀 294評論 0 0

友情鏈接更多精彩內(nèi)容