coreText绘制文本

这篇博客介绍了如何利用CoreText在iOS中绘制文本。首先,创建NSMutableAttributedString来设置文本属性,接着配置CTFramesetterRef。然后,定义绘制区域并生成CTFrameRef。最后,在view的drawRect方法中绘制排版好的文本,注意CoreText与UIKit坐标系统的差异,并确保手动释放资源。
摘要由CSDN通过智能技术生成

coreText绘制文本

    我们需要知道我们是将用Coretext布局好的文本图片信息绘制在view上,并在view的drawRect方法。现在我们先初步了解一下步骤:

  • 首先,我们需要根据要显示的文本以及文本属性初始化一个NSMutableAttributedString;
  • 根据文本以及文本属性配置CTFramesetterRef;
  • 设置绘制区域(CGPathRef),并根据绘制区域和CTFramesetterRef生成CTFrameRef;
  • 最后将排版好的文本绘制到view上。

    为了使代码结构清晰,可以将配置文本属性(包括字体大小,行间距等信息)写成一个类,再用一个类去排版布局文本,最后将排版好的文本绘制在view上。

  1. 首先根据要显示的文本以及文本属性生成NSMutableAttributedString
       //content就是要显示的文本内容
       NSMutableAttributedString *attString = [[NSMutableAttributedString alloc] initWithString:content];
        //config是用来记录文本属性(包括字体大小,字体颜色等信息)的类的对象
        NSMutableDictionary *dict = [NSMutableDictionary dictionary];
        //记录字体大小
        dict[NSFontAttributeName] = [UIFont systemFontOfSize:config.fontSize];
        //字体颜色
        dict[NSForegroundColorAttributeName] = config.fo
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值