NSMutableAttributedString图文并茂

通过下面代码可以通过NSTextAttachment将图片以附件的形式插入到属性文字中来达到图文并茂效果;

class ViewController: UIViewController {
    
    @IBOutlet weak var demoLabel: UILabel!

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let attrStr = NSAttributedString(string: "你好:",
        attributes: [NSForegroundColorAttributeName : UIColor.red])
        
        let attrStr1 = NSAttributedString(string: "Tony", 
        attributes: [NSForegroundColorAttributeName : UIColor.blue])
        
        // 图文并茂
        let attacment = NSTextAttachment()
        attacment.image = UIImage(named: "***")
        
        // 获取文字字体
        let fontHeight = demoLabel.font.lineHeight
        attacment.bounds = CGRect(x: 0, y: -4, width: fontHeight, height: fontHeight)
        let attrImageStr = NSAttributedString(attachment: attacment)
        
        let attrMStr = NSMutableAttributedString()
        attrMStr.append(attrStr)
        attrMStr.append(attrImageStr)
        attrMStr.append(attrStr1)
        
        demoLabel.attributedText = attrMStr
    }
}

常用属性:
NSFontAttributeName 字体
NSParagraphStyleAttributeName 段落格式
NSForegroundColorAttributeName 字体颜色
NSBackgroundColorAttributeName 背景颜色
NSShadowAttributeName 阴影
NSStrikethroughStyleAttributeName 删除线格式
NSStrokeColorAttributeName 删除线颜色
NSStrokeWidthAttributeName 删除线宽度
NSUnderlineStyleAttributeName 下划线格式

其他链接:
https://blog.csdn.net/chennai1101/article/details/109638414
https://www.jianshu.com/p/6665c088bd01

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值