Я имею UILabel с некоторым текстом, говорю, "Что привет Мир abcdefg" маркировка может иметь несколько строк, различные размеры шрифта и т.д.
Вопрос: Как я нахожу координаты всех букв "d" в этом UILabel.
Логический первый шаг является находкой положение тех символов в строке (UILabel.text), но затем как я перевожу это в координаты, когда это на самом деле привлекло экран
Идея состоит в том, чтобы найти те координаты и потянуть что-то пользовательское к тому же символ (в основном для покрытия его пользовательским изображением)
Основные инструменты для измерения текста на iPhone находятся в UIStringDrawing.h
, но ни один из них не делает того, что вам нужно. В основном вам придется итерационно проходить через подстроки, измеряя каждый символ за раз. Когда строка обернется (результат будет выше), разделите ее после последнего символа, который не обернулся, и добавьте высоту строки к координате y.
- (CGSize)sizeWithFont:(UIFont *)font forWidth:(CGFloat)width lineBreakMode:(UILineBreakMode)lineBreakMode;