iOS - NSMutableAttributedString 富文本的实现

最近研究富文本(NSMutableAttributedString)属性,下面分享一下。
Demo下载地址:http://download.csdn.net/download/techalleyboy/9844910
这里写图片描述

一:常见的属性及说明
NSKernAttributeName//字间距
NSFontAttributeName //字体
NSForegroundColorAttributeName //字体颜色
NSParagraphStyleAttributeName //段落格式
NSBackgroundColorAttributeName //背景颜色
NSUnderlineStyleAttributeName //下划线格式
NSUnderlineColorAttributeName//下划线颜色
NSStrikethroughStyleAttributeName //删除线格式
NSStrokeColorAttributeName //删除线颜色
NSStrokeWidthAttributeName //删除线宽度
NSShadowAttributeName //阴影
NSVerticalGlyphFormAttributeName//横竖排版
NSExpansionAttributeName //文本扁平化
二:属性的使用
1.NSKernAttributeName:
@10 调整字句 kerning 字句调整

2.NSFontAttributeName :
[UIFont systemFontOfSize:_fontSize] 设置字体

3.NSForegroundColorAttributeName
:[UIColor redColor] 设置文字颜色

4.NSParagraphStyleAttributeName :
paragraph 设置段落样式
NSMutableParagraphStyle *paragraph = [[NSMutableParagraphStyle alloc] init];
paragraph.alignment = NSTextAlignmentCenter;

5.NSBackgroundColorAttributeName:
[UIColor blackColor] 设置背景颜色

6.NSUnderlineStyleAttributeName:
@(NSUnderlineStyleSingle), 添加下划线
这里写图片描述
效果:
这里写图片描述

7.NSUnderlineColorAttributeName:
[UIColor redColor] 设置下划线颜色,取值为 UIColor 对象,默认值为黑色

8.NSStrikethroughStyleAttributeName:
设置删除线,取值为 NSNumber 对象(整数),枚举常量 NSUnderlineStyle中的值:

NSUnderlineStyleNone 不设置删除线
NSUnderlineStyleSingle 设置删除线为细单实线
NSUnderlineStyleThick 设置删除线为粗单实线
NSUnderlineStyleDouble 设置删除线为细双实线

这里写图片描述
效果:
这里写图片描述

9.NSStrokeColorAttributeName
设置文字描边颜色,需要和NSStrokeWidthAttributeName设置描边宽度,这样就能使文字空心.

NSStrokeWidthAttributeName这个属性所对应的值是一个 NSNumber 对象(小数)。该值改变描边宽度(相对于字体size 的百分比)。默认为 0,即不改变。正数只改变描边宽度。负数同时改变文字的描边和填充宽度。例如,对于常见的空心字,这个值通常为3.0。

同时设置了空心的两个属性,并且NSStrokeWidthAttributeName属性设置为整数,文字前景色就无效果了

这里写图片描述
效果:
这里写图片描述

这里写图片描述
效果:
这里写图片描述

10.NSShadowAttributeName 设置阴影,单独设置不好使,必须和其他属性搭配才好使

该属性所对应的值是一个 NSShadow 对象。默认为 nil。单独设置不好使,和这三个任一个都好使,NSVerticalGlyphFormAttributeName,NSObliquenessAttributeName,NSExpansionAttributeName

11.NSVerticalGlyphFormAttributeName
该属性所对应的值是一个 NSNumber 对象(整数)。0 表示横排文本。1 表示竖排文本。在 iOS 中,总是使用横排文本,0 以外的值都未定义。
这里写图片描述
效果:
这里写图片描述

12.NSObliquenessAttributeName设置字体倾斜。
这里写图片描述
效果:
这里写图片描述

13.NSExpansionAttributeName 设置文本扁平化
这里写图片描述
效果:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/techalleyboy/article/details/72414209