CoreText дает неправильный размер по отношению к тексту

Я использую TTTAtributedLabel для получения приблизительного размера для этикетки относительно текста. Это дает идеальный размер для каждого языка. Я столкнулся с проблемой, когда я использую текст гуджарати и пытаюсь получить размер.

Метод, который я вызываю, чтобы найти размер

[TTTAttributedLabel sizeThatFitsAttributedString:attributedString
                                                withConstraints:CGSizeMake(maxWidth, CGFLOAT_MAX)
                                         limitedToNumberOfLines:0];

В то время как значение в приведенной выше строке является строкой, а атрибуты указаны ниже.

Текст строки = તમે કેમ છો

Атрибуты

{
    NSColor = "UIExtendedGrayColorSpace 0 1";
    NSFont = "<UICTFont: 0x137e459e0> font-family: \".SFUIText\"; font-weight: normal; font-style: normal; font-size: 17.00pt";
    NSParagraphStyle = "Alignment 4, LineSpacing 0, ParagraphSpacing 0, ParagraphSpacingBefore 0, HeadIndent 0, TailIndent 0, FirstLineHeadIndent 0, LineHeight 0/0, LineHeightMultiple 0, LineBreakMode 0, Tabs (\n    28L,\n    56L,\n    84L,\n    112L,\n    140L,\n    168L,\n    196L,\n    224L,\n    252L,\n    280L,\n    308L,\n    336L\n), DefaultTabInterval 0, Blocks (\n), Lists (\n), BaseWritingDirection -1, HyphenationFactor 0, TighteningForTruncation NO, HeaderLevel 0";
}

Я отладил код и есть метод CoreText

CGSize suggestedSize = CTFramesetterSuggestFrameSizeWithConstraints(framesetter, rangeToSize, NULL, constraints, NULL);

В этот момент я получаю неправильный размер для текста выше.

Ожидаемый размер = (100, 20)

Фактический размер = (100 690)

0 ответов

Другие вопросы по тегам