|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Mar 2013
Сообщений: 290
|
TextField: размещение в центр Stage.
Всем лукошечко с черникой.
Еще один базовый вопрос. Необходимо разместить TextField в самый центр Stage, с учетом того, что его длина может быть произвольной. Как это сделать? Я через поиск посмотрел, но навскидку конкретного поста не увидел. В близком по смыслу посту, in4core предлагал формулу центровки для мувиклипа, с учетом длины и ширины. По этой аналогии, я предположил, что со стэйджем должно быть примерно так: text1.x = (stage.width - text1.width) * 0.5; text1.y = (stage.height - text1.height) * 0.5; Я решил посчитать, что же произошло. Stage.width = 640, Stage.height = 480 text1.width = 124, text.height = 80 Итого, по формуле получаем: text1.x = 258, text1.y = 200. Если на глаз прикинуть, то вроде бы это верные координаты. Но только, если x и y TextField размещаются в левом верхнем углу. Но судя по всему это не так, и наверное на самом деле они отмечают центр TextField? В хэлпе Адоуб вроде бы не сказано откуда именно отсчитывать x и y TextField. |
|
|||||
У stage есть свойства stageWidth и stageHeight.
Вот их и надо использовать |
|
|||||
Регистрация: Mar 2013
Сообщений: 290
|
caseyryan, да, stageWidth, блин точно, спасибо.
Однако в таком варианте имеется перекос: теперь x и y текстфилда вроде бы находятся в центре... Но тогда получается так: В формулу нужна поправка похоже. Может быть еще влияют другие параметры? Например есть: textFormat'овское свойство: - align = TextFormatAlign.LEFT; textField'овские свойства: - autoSize = TextFieldAutoSize.LEFT; - multiline = true; - wordWrap = false; |
|
|||||
Регистрация: Mar 2011
Сообщений: 243
|
Текст присваивается до или после центрирования?
|
|
|||||
Регистрация: Mar 2013
Сообщений: 290
|
Deimos747, До.
Сейчас вот сделал - после. Он еще ниже в правый угол ушел, лол. Странно, почему это влияет..? Значит надо играцца с всякими алигнами, наверное. UPD: Переместил строки: ... до присвоения координат. И всё получилось. Последний раз редактировалось iNils; 25.07.2013 в 15:35. |
|
|||||
По-моему если поставить autoSize в TextFieldAutoSize.CENTER; и поправлять координаты после каждого изменения текста, то должно быть норм
Оффтопик: у вас растровый шрифт? Не поделитесь своим способом реализации на нативном флеше? |
|
|||||
Регистрация: Mar 2013
Сообщений: 290
|
KumoKairo, странно дело, если TextFieldAutoSize.CENTER поставить, и переместить форматирование обратно (в докоординатное положение), то текст центрируется по ширине правильно, но смещен в нижний угол.
Насчет шрифта, это Rokwell Extra Bold, OpenType-овский шрифт. Я не знаю что означает "растровый" в применении к шрифтам? Способ реализации прост: основной файл (координаты + текст) + класс текста (базовые настройки) + класс формата (там только цвет и имя шрифта) + класс фильтров (настройки фильтров). Если нужен код класса фильтров, могу запостить его здесь. |
|
|||||
Регистрация: Mar 2013
Сообщений: 290
|
KumoKairo, да незачто.
Ээ, а что такое "BitmapFont из спрайт листа" ? Можно хотя бы в паре слов, что это - техника вывода текста, юзая чисто графику? Было бы полезно, если я это себе правильно представляю. Типа не юзать шрифты, не внедрять их. |
|
|||||
BitmapFont это набор всевозможных требуемых приложением символов, которые заранее отрисованы с применением необходимых стилей, фильтров и т.д., собранных в виде одного изображения (которое по идее отправляется в виде текстуры на графическую карту)
Поскольку мобильные приложения с векторной графикой не очень дружат, для мобильников этот процесс отлажен просто до упора Вот например: У меня просто недавно возникла необходимость добавить текстовое поле с готовым шрифтом, а безбиблиотечной реализации (я "фанат" старлинга и там это есть) не оказалось. А то что нашел было слишком масштабным. В итоге пришлось делать свою реализацию отрисовки, но она не гибкая, расчитанная только "на один раз", поэтому стало интересно узнать насчет вашего способа отрисовки текста |
Часовой пояс GMT +4, время: 03:40. |
|
« Предыдущая тема | Следующая тема » |
Теги |
stage , textfield , формула , центр , центрирование |
|
|