iOS 开发关于富文本属性总结及简易封装

对21个NSAttributedStringKey的梳理总结

1.  NSFontAttributeName NS_AVAILABLE(10_0, 6_0);

     设置字体大小,默认为12

2.NSParagraphStyleAttributeName NS_AVAILABLE(10_0, 6_0);

设置文本的段落,它的Value值是NSMutableParagraphStyle

3. NSForegroundColorAttributeName NS_AVAILABLE(10_0, 6_0);

设置字体的颜色,默认是黑色

4. NSBackgroundColorAttributeName NS_AVAILABLE(10_0, 6_0);

设置背景颜色,默认背景为透明

5.  NSLigatureAttributeName NS_AVAILABLE(10_0, 6_0);

设置连字符,它的Value值是NSNumber, 比如:@(1)

6. NSKernAttributeName NS_AVAILABLE(10_0, 6_0);

设置字符的间距,value值亦是NSNumber,如:@(3)或者@(-3),正数表示间距加宽,负数表示缩小字符间距

7.  NSStrikethroughStyleAttributeName NS_AVAILABLE(10_0, 6_0);

设置删除线,NSNumber对象,除了以下这4种还可以设置其他整数值,取值为 0 - 7时,效果为单实线,随着值得增加,单实线逐渐变粗,取值为 9 - 15时,效果为双实线,取值越大,双实线越粗枚举类型:@(NSUnderlineStyleNone)  不设置删除线

@(NSUnderlineStyleSingle) 设置删除线为细单实线

@(NSUnderlineStyleThick)  设置删除线为粗单实线

@(NSUnderlineStyleDouble) 设置删除线为细双实线

8. NSStrikethroughColorAttributeName NS_AVAILABLE(10_0, 7_0);

设置删除线的颜色,value值为 UIColor 对象,默认值为黑色

 9. NSStrokeWidthAttributeName NS_AVAILABLE(10_0, 6_0);

设置笔画宽度,value值为 NSNumber 对象@(整数),负值填充效果,正值中空效果

10. NSStrokeColorAttributeName NS_AVAILABLE(10_0, 6_0);

设置填充部分颜色,不是字体颜色

11.NSUnderlineStyleAttributeName NS_AVAILABLE(10_0, 6_0);

设置下划线,value值为 NSNumber 对象(整数),枚举常量 NSUnderlineStyle中的值,与删除线类似

 12. NSUnderlineColorAttributeName NS_AVAILABLE(10_0, 7_0);

设置下划线的颜色 value值为 UIColor 对象

13. NSShadowAttributeName NS_AVAILABLE(10_0, 6_0);

设置阴影属性,value值为 NSShadow 对象

14.NSTextEffectAttributeName NS_AVAILABLE(10_10, 7_0);

设置文本特殊效果,取值为 NSString 对象,目前只有一个可用的特效

NSTextEffectLetterpressStyle(凸版印刷效果),适用于iOS 7.0及以上

15.   NSAttachmentAttributeName NS_AVAILABLE(10_0, 7_0);

设置文本附件,取值为NSTextAttachment对象,常用于文字图片混排

16.  NSLinkAttributeName NS_AVAILABLE(10_0, 7_0);

设置链接属性,点击后调用浏览器打开指定URL地址

17.  NSBaselineOffsetAttributeName NS_AVAILABLE(10_0, 7_0);   

设置基线偏移值,取值为 NSNumber (float),正值上偏,负值下偏

18. NSObliquenessAttributeName NS_AVAILABLE(10_0, 7_0);

设置字形倾斜度,取值为 NSNumber (float),正值右倾,负值左倾

19.NSExpansionAttributeName NS_AVAILABLE(10_0, 7_0);

设置文本横向拉伸属性,取值为 NSNumber (float),正值横向拉伸文本,负值横向压缩文本

20. NSWritingDirectionAttributeName NS_AVAILABLE(10_6, 7_0);

设置文字书写方向,取值为以下组合

@[@(NSWritingDirectionLeftToRight | NSTextWritingDirectionEmbedding)]

@[@(NSWritingDirectionLeftToRight | NSTextWritingDirectionOverride)]

@[@(NSWritingDirectionRightToLeft | NSTextWritingDirectionEmbedding)]

@[@(NSWritingDirectionRightToLeft | NSTextWritingDirectionOverride)]

 21. NSVerticalGlyphFormAttributeName NS_AVAILABLE(10_7, 6_0);

设置文字排版防线,取值为 NSNumber 对象(整数),0 表示横排文本,1 表示竖排文本。  在 iOS 中,总是使用横排文本,0 以外的值都未定义

想要进一步了解具体的使用及封装的小demo,请移步这里,也请大家多多提出问题,相互学习,谢谢。

你可能感兴趣的:(iOS 开发关于富文本属性总结及简易封装)