HTML TextField AS3. HTML-форматирование текста в текстовом поле

Форматирование посредством экземпляра класса TextFormat позволяет форматировать ВЕСЬ текст в выбранном текстовом поле, но это, к сожалению, не дает возможности форматировать отдельные абзацы, предложения, слова и буквы. Для того чтобы это осуществить Вам необходимо сделать гипертекстовую разметку такого текста (HTML TextField AS3).

Текстовые поля в ActionScript 3 поддерживают небольшой набор тэгов HTML 1.0, которые Вы можете использовать внутри них. В большинстве случаев это тэги, эквивалентные по своему значению свойствам класса TextFormat.

Например, класс textFormat содержит свойство url для создания гиперссылки; в HTML ту же задачу решает тэг <a>. Кроме того, для того чтобы сделать текст жирным используется тэг <b>, наклонным – <i>, в виде списка – <li> и т.д. Для добавления картинок используют тэг <img>, перехода на новую строку – <br>, создания нового абзаца – <p>.

В большинстве случаев, атрибуты для вышеперечисленных тэгов поддерживаются в ActionScript точно также как и в HTML. Например, Для определения цвета шрифта достаточно записать следующее:

Для того чтобы применить форматирование HTML TextField AS3 в ActionScript Вы должны добавить текст в текстовое поле с помощью свойства htmlText, а не с помощью стандартного text. Если Вы попытаетесь использовать оба свойства, то «сработает» только text.

HTML TextField AS3. HTML-форматирование текста в текстовом поле

Создайте текстовое поле

Добавьте это поле на сцену (stage)

Назначьте ширину для этого текстового поля

Задайте автоматическое определение размеров для созданного текстового поля

Если необходимо включите свойство для поддержки многострочного текста

Декларируйте переменную с типом данных String, которая включает в себя HTML-форматирование

Поместите переменную info в текстовое поле, используя свойство htmlText

Весь код, набранный выше, отобразится во Flash CS5 так:

HTML TextField AS3

Haжмите Ctrl + Enter.

Ролик запустится. Отформатированный текст появится на экране монитора.

Дополнительная информация

Flash Player также поддерживает специальные символы. Вы наверняка знаете, что для гипертекстовой разметки страниц используются определенные символы, такие как, например, ” < ” и ” > “, ” / ” и ” ! ” и т.д. Нельзя, используя форматирование (HTML TextField) записать математическую формулу 6 < 10, т.к. при обработке броузером HTML-кода символ «меньше» будет принят за символ, открывающий тэг и произойдет ошибка. Вместо этого Вам нужно использовать следующую запись &lt;

Flash поддерживает следующие специальные символы:

  • &lt; – символ “меньше чем”
  • &gt; – символ “больше чем”
  • &amp; – символ “амперсанд”
  • &quot; – символ “кавычки”
  • &apos; – символ “апостроф”
  • &nbsp; – символ “неразрывный пробел”

Любые тэги языка HTML, которые не поддерживаются Flash Player’ом будут проигнорированы. Например, если Вы захотите вставить таблицу в текстовое поле и запишите следующий код

то все тэги, которые не распознаются Flash Player’ом <table><tr><td> и их закрывающие тэги будут удалены. Из записанного останется только

HTML TextField AS3. HTML-форматирование текста в текстовом поле: 4 комментария

  1. Добрый день ! Можно ли заставить Flash Player розпозновать эти теги <table><tr><td>.

  2. Хаюшки. У меня такой вопрос можно ли как то изменить цвет отдельных слов в одном TextField без использования стилей на каждый отдельный цвет? если да, то как можно это реализовать в as3?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *