![]() |
Как найти положение знака в TextField по Х и У
Здравствуйте, хочу задать вопрос: как найти положение по Х и У символа в TextField по индексу. Это возможно каким-то другим способом, кроме как делать перенос вручную?
Нужно динамичный текст (в несколько строк) разбить на буквы, которые летят в разные стороны и уменьшаясь исчезают. Интересует только нахождение позиции символа по индексу. Все остальное знаю. |
нет. зависит от шрифта и параметров поля. Можно написать свою функцию которая бы это делала, но она будет очень большой ибо слишком много факторов. Лучше сразу отображать набор клипов с 1 буквой в каждом.
|
Большая будет это точно, но в принципе, зная размеры символов, можно и попробовать. Если текст не скроллируется. Просто у каждого символа индивидуальная ширина (на самом деле конечно не у каждого а несколько групп символов) и, что еще хуже, есть кернинговые пары, у которых тоже ширина получается индивидуальной(но это не во всех шрифтах есть), поэтому придется в цикле делать проверку, что именно за текущий символ, и скажем, заносить ширину в массив. С настройкой придется повозиться, а так в принципе возможно.
Не думаю, что это сложнее, чем сделать мувики с буквами. Т.е. сделать-то несложно, а когда расставлять будешь в исходную позицию - опять к ширине придешь... Только что можно дать плееру с шириной поразвлекаться, используя просто *_width + *_width + *_width .... Но вот насколько точно он сам эту ширину определит, в смысле ЧТО он возьмет за ширину мувика, в котором буква? Подозреваю, что возьмет он совсем не то, и тупо составив мувики в ряд, ты получишь совсем другую картинку. Особенно, если шрифт поддерживает кернинговые пары. (Для примера Arial содержит 591 кернинговую пару, Tahoma - 605. Понятно что большинство символов этого шрифта тебе не надо. Пусть будет 200 :) Представь - 200 нестандартных расстояний между буквами в зависимости от того, что это за буквы). |
| Часовой пояс GMT +4, время: 12:08. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.