如何在 CALayer 中绘制简单的位图文本?
Posted
技术标签:
【中文标题】如何在 CALayer 中绘制简单的位图文本?【英文标题】:How to draw simple bitmap text in a CALayer? 【发布时间】:2017-03-29 06:24:36 【问题描述】:我想使用包含大约 18 个固定宽度(9x15,1x 和视网膜尺寸)字符的类似精灵表的图像将大量字符串绘制到 CALayer。我不需要任何颜色的改变,从系统字体转换,甚至改变大小。只是简单的位图字体渲染。
这是我正在尝试使用的精灵表(1x 大小):
Image link
我尝试过使用 CoreText 框架设置器和 NSAttributedString.draw,但是对于我需要更新每个框架的文本量以及我想要实现的外观来说,它们太慢而且太花哨了。
我该怎么做呢?
【问题讨论】:
【参考方案1】:@ToxicCaves64,也许你可以制作自己的真字体(.ttf)文件,并将你的十八个固定宽度字符放入你的字体文件中,然后你可以将你的字符渲染为文本而不是图像
【讨论】:
使用位图渲染的全部意义在于,像 Core Text 这样的方法来渲染 ttfs 对于我需要渲染的大量文本来说太慢了,所以不能选择 ttf。这应该很容易,因为位图字体自 70 年代以来就已经存在并以快速的速度呈现。以上是关于如何在 CALayer 中绘制简单的位图文本?的主要内容,如果未能解决你的问题,请参考以下文章