CoreText图文混排
我们接着上一篇讲,上篇已经大概的讲了下单纯的绘制文字,但是一篇文章一般都会有几张图片的,而且是嵌入文字内的,不一定是将上下文字换行来处理的,我们今天就讲一下如果图片嵌入了文字该如何处理。
思路
我们已经可以正常绘制富文本了,也可以通过CTLine
和CTRun
来分别对每行或者每行的绘制对象来进行干预来完成绘制。
我们来简单捋一下图文混排的思路,一些准备操作和之前是一样的,只是在将富文本传递给CTFramesetterRef
工厂对象时候需要将图片插入富文本中,因为Core Text
无法直接绘制图片,只能是将相关的代理传递给一个既定的富文本,之后遍历CTRun
来识别再去使用Core Graphics
对图片进行绘制在View上面,而属性字符串里面只能存一些高度距离相关的属性。