Jus*_*tin 5 algorithm geometry text word-wrap core-text
我正在寻找有关实现视图的指导,该视图NSAttributedString在带有孔的多边形内呈现,包裹和回流文本以适合几何.这不是CoreText问题,而是将不规则形状划分为有序蹲下矩形序列的一般问题.
类似的问题尚未得到充分回答:
如何在Javascript中用文本填充形状
CoreText CTFramesetter不支持渲染成CGPath
CoreText处理与文本布局和显示相关的令人难以置信的大量工作,所以我不禁怀疑我正在重新发明一个轮子.出于这个问题的目的,请假设我可以检查适合给定矩形的子字符串,同时考虑自动换行和连字符.
编辑:我已经决定只扫描从左到右的绘图,尽可能多地适应边界.虽然我打破了自然界限,但看起来有点随意,所以我仍然很欣赏其他应用程序如何包装文本的指导.
编辑#2:它现在看起来很不错,它支持基本的自动换行并避免渲染很短的行.我的问题一定太模糊了.谢谢你的期待.
编辑#3: Amorya指出CTFramesetter现在接受任何CGPath.
我写了一篇关于用Core Text实现文本换行的博文:
http://blog.amyworrall.com/post/11098565269/text-wrap-with-core-text
该功能是iOS 4.3和MacOS X Lion中的新功能.您现在可以首先在非矩形路径内绘制,然后通过其他路径来掩盖流动(即您环绕的孔).