Iphone CoreText中的行距和段落对齐
我正在使用CoreText渲染多个文本列。但是,当我将第1段的第一个字母设置为粗体、比正文其余部分大的字体时,我遇到了两个问题(均在附图中可见):Iphone CoreText中的行距和段落对齐,iphone,cocoa,cocoa-touch,ipad,core-text,Iphone,Cocoa,Cocoa Touch,Ipad,Core Text,我正在使用CoreText渲染多个文本列。但是,当我将第1段的第一个字母设置为粗体、比正文其余部分大的字体时,我遇到了两个问题(均在附图中可见): 第一行下面的间距太大(我知道这是因为第一个字符可能是g、y、p、q等) 第一行下面的行现在不会与下一列中的相应行对齐 任何关于如何克服这两个问题的建议都将不胜感激,谢谢。 解决这一问题的唯一方法似乎是采用一种变通方法,即为第一列创建3个框架,1个用于W,1个用于第一句的其余部分,1个用于第一列的其余部分。根据文档,kCTParagraphStyleS
解决这一问题的唯一方法似乎是采用一种变通方法,即为第一列创建3个框架,1个用于W,1个用于第一句的其余部分,1个用于第一列的其余部分。根据文档,kCTParagraphStyleSpecifierMaximumLineHeight应该解决了这个问题,但不幸的是似乎没有解决至少在IOS 4.3上工作
CTParagraphStyleSetting theSettings[5] =
{
{ kCTParagraphStyleSpecifierParagraphSpacing, sizeof(CGFloat), &spaceBetweenParaghraphs },
{ kCTParagraphStyleSpecifierParagraphSpacingBefore, sizeof(CGFloat), &topSpacing },
{ kCTParagraphStyleSpecifierLineSpacing, sizeof(CGFloat), &spaceBetweenLines },
{ kCTParagraphStyleSpecifierMinimumLineHeight, sizeof(CGFloat), &lineHeight},
{ kCTParagraphStyleSpecifierMaximumLineHeight, sizeof(CGFloat), &lineHeight}
};
CTParagraphStyleRef paragraphStyle = CTParagraphStyleCreate(theSettings, 5);
平心而论,文档中说它在OS v10.5及更高版本中可用
KCTParagraphStyleSpecifier最大线宽
:帧中任何行将占据的最大高度,无论字体大小或任何附加图形的大小。超过此高度的图示符和图形将与相邻行重叠。最大高度0表示没有行高限制。此值始终为非负。
键入:CGFloat。
默认值:0.0。
应用:CTFramesetter.
在Mac OS X v10.5及更高版本中提供。
以CTParagraphStyle.h.声明。请出示您的代码好吗?