iOS 富文本,ios文本
// NSFontAttributeName 設定字型屬性,預設值:字型:Helvetica(Neue) 字型大小:12// NSForegroundColorAttributeNam 設定字型顏色,取值為 UIColor對象,預設值為黑色// NSBackgroundColorAttributeName 設定字型所在地區背景顏色,取值為 UIColor對象,預設值為nil, 透明色// NSLigatureAttributeName 設定連體屬性,取值為NSNumber 對象(整數),0 表示沒有連體字元,1 表示使用預設的連體字元// NSKernAttributeName 設定字元間距,取值為 NSNumber 對象(整數),正值間距加寬,負值間距變窄// NSStrikethroughStyleAttributeName 設定刪除線,取值為 NSNumber 對象(整數)// NSStrikethroughColorAttributeName 設定刪除線顏色,取值為 UIColor 對象,預設值為黑色// NSUnderlineStyleAttributeName 設定底線,取值為 NSNumber 對象(整數),枚舉常量 NSUnderlineStyle中的值,與刪除線類似// NSUnderlineColorAttributeName 設定底線顏色,取值為 UIColor 對象,預設值為黑色// NSStrokeWidthAttributeName 設定筆畫寬度,取值為 NSNumber 對象(整數),負值填充效果,正值中空效果// NSStrokeColorAttributeName 填充部分顏色,不是字型顏色,取值為 UIColor 對象// NSShadowAttributeName 設定陰影屬性,取值為 NSShadow 對象// NSTextEffectAttributeName 設定文本特殊效果,取值為 NSString 對象,目前只有圖版印刷效果可用:// NSBaselineOffsetAttributeName 設定基準位移值,取值為 NSNumber (float),正值上偏,負值下偏// NSObliquenessAttributeName 設定字形傾斜度,取值為 NSNumber (float),正值右傾,負值左傾// NSExpansionAttributeName 設定文本橫向展開屬性,取值為 NSNumber (float),正值橫向展開文本,負值橫向壓縮文本// NSWritingDirectionAttributeName 設定文字書寫方向,從左向右書寫或者從右向左書寫// NSVerticalGlyphFormAttributeName 設定文字排版方向,取值為 NSNumber 對象(整數),0 表示橫排文本,1 表示豎排文本// NSLinkAttributeName 設定連結屬性,點擊後呼叫瀏覽器開啟指定URL地址// NSAttachmentAttributeName 設定文本附件,取值為NSTextAttachment對象,常用於文字圖片混排// NSParagraphStyleAttributeName 設定文本段落排版格式,取值為 NSParagraphStyle 對象
[objc] view plain copy
- // 建一個小文本用來測試
- UILabel * label = [[UILabel alloc] initWithFrame:[UIScreen mainScreen].bounds];
- label.font = [UIFont systemFontOfSize:30];
- label.textAlignment = NSTextAlignmentCenter;
- label.numberOfLines = 0;
[objc] view plain copy
- NSMutableAttributedString * attributedText = [[NSMutableAttributedString alloc] initWithString:@"測試文字:\n改變文字間距\n改變文字大小\n改變文字顏色\n改變文字背景\n添加文字刪除線\n添加文字底線\n設定字型傾斜\n設定文本扁平化"];
- // 改變文字間距
- [attributedText setAttributes:@{NSKernAttributeName:@10} range:NSMakeRange(6, 6)];
- // 改變文字大小
- [attributedText setAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:30]} range:NSMakeRange(13, 6)];
- // 改變文字顏色
- [attributedText setAttributes:@{NSForegroundColorAttributeName :[UIColor redColor]} range:NSMakeRange(20, 6)];
- // 改變文字顏色
- [attributedText setAttributes:@{NSBackgroundColorAttributeName: [UIColor yellowColor] } range:NSMakeRange(27, 6)];
- // 添加文字刪除線 (NSUnderlineStyleSingle是個枚舉,詳細的自己試)
- [attributedText setAttributes:@{NSStrikethroughStyleAttributeName:@(NSUnderlineStyleSingle) } range:NSMakeRange(34, 7)];
- // 添加文字底線 (NSUnderlineStyleSingle是個枚舉,詳細的自己試)
- [attributedText setAttributes:@{NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick) } range:NSMakeRange(42, 7)];
- // 設定字型傾斜
- [attributedText setAttributes:@{NSObliquenessAttributeName:@0.5} range:NSMakeRange(50, 6)];
- // 設定文本扁平化
- [attributedText setAttributes:@{NSExpansionAttributeName:@0.4} range:NSMakeRange(57, 7)];
- // 字型加粗
- [attributedText setAttribute:NSExpansionAttributeName value:@(0.5) range:range];
- // 更改後的文字賦值
[objc] view plain copy
- label.attributedText = attributedText;
- [self.view addSubview:label];
官方 API 參考連結:https://developer.apple.com/documentation/foundation/nsmutableattributedstring#//apple_ref/doc/uid/TP40003689載入HTML標籤文本連結: http://blog.csdn.net/u010330109/article/details/51882122