对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,请移步这里,也请大家多多提出问题,相互学习,谢谢。
网友评论