Уроки Flash: Как выровнять?Источник: arttower
Почти любое действие можно сделать на компьютере разными способами. Иногда подходящий или неподходящий способ означает экономию или, наоборот, пустую трату значительного времени. И даже если речь о мелочах вроде пары лишних кликов мышкой - эти мелочи складываются в очень и очень ощутимые трудозатраты на сколько-нибудь значительном объеме работы. Этим уроком я начинаю серию рассказов "как сделать?" - о том, как сделать что-либо в Flash несколькими способами. "Мышкой" и "горячими клавишами" не считается различными способами, хотя я рекомендую везде, когда и где только возможно, использовать клавиатурные комбинации - с клавиатуры при некотором навыке все делается гораздо (в некоторых случаях - в десятки раз) быстрее. Поэтому, где возможно, я буду приводить последовательность "хоткеев". Некоторые из приемов использовались в других уроках, однако я думаю, что это не помешает такой серии быть полезной, в особенности для начинающих. Дополнения и замечания привествуются. Выравнивание по центру сцены 1) Через панель Align: выбрать объект, вызвать панель Window->Align, отметить опцию "Align to Stage", нажать кнопку соответствующего выравнивания. CODE
my_mc._x = (Stage.width - my_mc._width)/2;
my_mc._y = (Stage.height - my_mc._height)/2; Выравнивание объектов между собой 1) Сводится к тем же процедурам, только опция "Align to Stage" должна быть выключена. При этом не забывайте об известной оригинальной особенности флэш: шейпы одного цвета на одном слое при наложении сливаются, разных цветов - то, что лежит выше (в том же слое, но), вырезает при снятии выделения (выбора) "дырку" в том, что ниже - т.е. работает аналогично функции trim для путей в других векторных редакторах. CODE
my_mc2._x = my_mc._x+(my_mc._width - my_mc2._width)/2;
my_mc2._y = my_mc._y+(my_mc._height - my_mc2._height)/2; Можно еще выравнивать с помощью направляющих (guides) и сетки (grid), но об использовании того и другого мы поговорим в другой раз отдельно. Выравнивание текста Текст (уже отцентрированный по текстовому полю опцией в Properties) выравнивать горизонтально по центру лучше всего, перемещая хэндлы текстового поля. Т.о. можно выровнять текст с учетом округлых и заостренных элементов, т.е. зрительно, а не только геометрически. Выравнивание текста внутри блока можно задавать для динамического текста с включенной опцией "render as HTML" через атрибуты HTML-тэга <P> - напр., так:
CODE
_root.txt_var = "<p align='center'>hello world</p>";
/* при txt_var - переменная текстового поля в этом случае опция выравния из Properties игнорируется */ или CODE
_root.txt.htmlText = "<P align='center'>Hello world</P>"; /* где txt - имя текстового поля. замечание: конструкция вида */ В случае выравнивания части текста внутри параграфа придется использовать отдельный параграф - по неизвестной причине тэг <span> в флэш-интерпретации атрибут align не поддерживает. Для включения режима "render as HTML" программно используется такое выражение: CODE
_root.txt.html = true; Для форматирования динамического HTML-текста можно использовать также каскадные таблицы стилей, но они заслуживают, я думаю, отдельного, а то и не одного, урока.
Автором урока является Des. |