2010-11-05 60 views
2

我在我的iOS 3.2应用程序(iPad)中生成了一个相当复杂的NSAttributedString,包括类型为CTParagraphStyleSetting的格式化选项,特别是值为kCTParagraphStyleSpecifierMinimumLineHeight和kCTParagraphStyleSpecifierParagraphSpacing。将NSAttributedString绘制成非矩形CGPath?

当我尝试将此属性字符串绘制到非矩形CGPath中时,Core Text会绘制它,但没有定义行距;也就是说,所有文本都显示为没有行间距的段落。毋庸置疑,它看起来不像CGPath只是简单地使用对CGPathAddRect()的单个调用定义的!

有没有我可以指定的设置(对我的CTFramesetterRef或与罪魁祸首CGPath关联的CTFrameRef)以避免丢失所有行高度信息?

谢谢!

+0

只是一个问题:你有没有设法几乎正确绘制(除来自lineheight)文本的非矩形cgpath? – hfossli 2010-11-10 09:39:23

+1

是的,你可以用你想要的任何形状创建一个CGPath,并且文本是在里面绘制的 - 尽管没有正确的线条高度。这真的很酷:) – 2010-11-16 21:51:52

回答

1
2
+3

事情是,你实际上*可以*在非矩形形状上绘制一个NSAttributedString,*但是*它的一些属性在你这样做时会丢失。在我的情况下,行高和段落设置丢失了......我想知道是否有办法解决这个问题。 – 2011-01-04 19:45:27