Вбудовування шрифтів в adobe flash

Вбудовування шрифтів в Adobe Flash / ActionScript 3.0 додатка

Розглянемо алгоритм впровадження шрифтів у флеш-додатки, створювані в програмі Adobe Flash (на прикладі Adobe Flash CS5.5) і використання впроваджених шрифтів при програмуванні на ActionScript 3.0.

Для прикладу я пропоную створити текстове поле, в якому текст буде виводиться симпатичним шрифтом «A La Russ». Результат повинен вийти приблизно таким:

Насамперед, нам треба помістити шрифт в бібліотеку нашого флеш-проекту. Для цього йдемо в саму бібліотеку і, навівши на порожню область бібліотеки, правим кліком мишки викликаємо контекстне меню. У контекстному меню бібліотеки вибираємо пункт «Створити шрифт».

Вбудовування шрифтів в adobe flash

Важливо розуміти, що у флеш кожен стиль шрифту (напівжирний. Курсив) вважається окремим шрифтом і вбудовувати його треба теж окремо.

Вбудовування шрифтів в adobe flash

Вбудовування шрифтів в adobe flash

Тепер давайте за допомогою мови ActionScript 3.0 створимо текстове поле і зробимо так, щоб вміст цього текстового поля відображалося за допомогою нашого впровадженого шрифту.

Код ActionScript 3.0:

/ * Створюємо специфічне форматування тексту для нашого майбутнього текстового поля. * / Var tf: TextFormat = new TextFormat (); tf.font = new A_La_Russ (). fontName; // вказуємо шрифт, який хочемо використовувати в текстовому полі tf.size = 20; // вказуємо розмір тексту / * Створюємо динамічне текстове поле. * / Var txtField: TextField = new TextField (); txtField.defaultTextFormat = tf; // вказуємо форматування, яке буде використовуватися для даного текстового поля txtField.width = 500; // ширина текстового поля txtField.height = 350; // висота текстового поля txtField.x = 25; // положення текстового поля по осі х txtField.y = 25; // положення текстового поля по осі у txtField.embedFonts = true; // вказуємо, що текст повинен відображатися за допомогою вбудованого шрифту txtField.multiline = true; // текстове поле повинно бути багаторядковим txtField.wordWrap = true; // дозволяємо перенесення за словами txtField.text = "В літо 6750. Великий князь Ярослав послав сина свого Андрія в Новгород Великий на допомогу Олександру проти німців. І перемогли німців за Псковом на озері, і багатьох взяли в полон, і повернувся Андрій до свого батькові з честю. "; // текст текстового поля addChild (txtField); // додаємо текстове поле в список відображення

Для текстових полів, у яких властивість embedFonts має значення true, доступна настройка типу згладжування. Налаштування типу згладжування здійснюється за допомогою властивості antiAliasType. яке може мати одне з двох значень:

Приклад використання згладжування:

Використання згладжування (AntiAliasType.ADVANCED) буває дуже корисним, якщо ви використовуєте для текстового поля дуже дрібний шрифт. У таких випадках текст стає більш чітким, а, отже, більш читабельним.

Исходник під Adobe Flash CS5.5 можна завантажити тут.

Схожі статті