包装的CATextLayer中的行间距是多少?

问题描述 投票:0回答:1

我正在尝试创建一个CATextLayer,其框架的大小恰好是3行文本加上该文本之间的间距。我知道我的字体大小是12。

因此,框架的高度应为12 * 3 + 2 * spaceSize。

我想要spaceSize等于的数字,我在任何地方都找不到。


如果有帮助,我正在使用的字体是Helvetica。

ios swift calayer catextlayer
1个回答
0
投票
CTFramesetterRef framesetter = CTFramesetterCreateWithAttributedString( (CFMutableAttributedStringRef) textLayer.string);
CGSize suggestedSize = CTFramesetterSuggestFrameSizeWithConstraints(framesetter, CFRangeMake(0, 0), NULL, CGSizeMake(CGFLOAT_MAX, CGFLOAT_MAX), NULL);
CFRelease(framesetter);
CGFloat layerHeight = ceil(suggestedSize.height);
spaceSize = (layerHeight - 36) / 2.0;
© www.soinside.com 2019 - 2024. All rights reserved.