CTFramesetterSuggestFrameSizeWithConstraints返回错误的高度

时间:2012-07-23 18:21:22

标签: iphone objective-c ios core-text

我知道有关于此的帖子,但没有一个提示有用的东西..所以我的问题是CTFramesetterSuggestFrameSizeWithConstraints返回的高度对于我的文本来说太小,文本越长,它被剪切的越多。我用来计算身高的代码:

CGFloat widthConstraint = self.frame.size.width;
CTFramesetterRef framesetter = CTFramesetterCreateWithAttributedString(attrString);
CGSize suggestedSize = CTFramesetterSuggestFrameSizeWithConstraints(framesetter,CFRangeMake(0, 0),NULL,CGSizeMake(widthConstraint, 20000),NULL);
CGFloat suggestedHeight = suggestedSize.height;

所以我的问题是我有什么选择?也许有一些解决方法? 我找到的解决方案之一是绘制文本然后才找到高度,但我不知道该怎么做。那么也许有人可以解决这个问题?

谢谢我提前!!

1 个答案:

答案 0 :(得分:0)

很久以后我终于发现了什么是错的。毕竟这个方法按预期工作,我想其他所有人都说它不在互联网上犯了一些错误。我的错误是当我画画的时候文本我留下了一些糟糕的硬编码值。所以,如果有人对CTFramesetterSuggestFrameSizeWithConstraints有问题,请检查你的绘图代码是否加倍或三重!