您的位置:首页 > 移动开发 > IOS开发

iOS - NSMutableAttributedString 富文本的实现

2017-05-17 17:01 337 查看
最近研究富文本(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 设置文本扁平化



效果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐