![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Oct 2006
Сообщений: 395
|
Здравствуйте, хочу задать вопрос: как найти положение по Х и У символа в TextField по индексу. Это возможно каким-то другим способом, кроме как делать перенос вручную?
Нужно динамичный текст (в несколько строк) разбить на буквы, которые летят в разные стороны и уменьшаясь исчезают. Интересует только нахождение позиции символа по индексу. Все остальное знаю. |
|
|||||
|
нет. зависит от шрифта и параметров поля. Можно написать свою функцию которая бы это делала, но она будет очень большой ибо слишком много факторов. Лучше сразу отображать набор клипов с 1 буквой в каждом.
__________________
I'm only happy when it rains. Waka Laka |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Большая будет это точно, но в принципе, зная размеры символов, можно и попробовать. Если текст не скроллируется. Просто у каждого символа индивидуальная ширина (на самом деле конечно не у каждого а несколько групп символов) и, что еще хуже, есть кернинговые пары, у которых тоже ширина получается индивидуальной(но это не во всех шрифтах есть), поэтому придется в цикле делать проверку, что именно за текущий символ, и скажем, заносить ширину в массив. С настройкой придется повозиться, а так в принципе возможно.
Не думаю, что это сложнее, чем сделать мувики с буквами. Т.е. сделать-то несложно, а когда расставлять будешь в исходную позицию - опять к ширине придешь... Только что можно дать плееру с шириной поразвлекаться, используя просто *_width + *_width + *_width .... Но вот насколько точно он сам эту ширину определит, в смысле ЧТО он возьмет за ширину мувика, в котором буква? Подозреваю, что возьмет он совсем не то, и тупо составив мувики в ряд, ты получишь совсем другую картинку. Особенно, если шрифт поддерживает кернинговые пары. (Для примера Arial содержит 591 кернинговую пару, Tahoma - 605. Понятно что большинство символов этого шрифта тебе не надо. Пусть будет 200 Представь - 200 нестандартных расстояний между буквами в зависимости от того, что это за буквы).
__________________
Reality.getBounds(this); Последний раз редактировалось Wolsh; 10.08.2007 в 02:25. |
![]() |
![]() |
Часовой пояс GMT +4, время: 11:05. |
|
|
« Предыдущая тема | Следующая тема » |
|
|