Мысли, возникающие в процессе работы над проектом "Межпланетье".
Встраивание шрифта в Adobe Flash CS3
В последних версиях Flash-плеера Adobe внес какие-то изменения в отображение системных шрифтов, в следствие которых, шрифтом по-умолчанию стал Arial (до этого был Times). Это бы еще ничего, но для системных шрифтов теперь постоянно включен режим сглаживания, из-за которого текст небольшой высоты (10-12) выглядит сильно смазанным.
Добиться приемлемой четкости шрифта через AntiAliasType.ADVANCED мне не удалось. Поэтому выход остался один - встроить шрифт в flash-приложение.
Проинспектировав "гугл" на предмет встраивания шрифтов, можно получить множество ссылок на встраивание шрифтов и абсолютно во всех это предлагается делать посредством [EMBED ...]
Помучавшись некоторое время, я убедился, что в Adobe Flash этот метод не работает и директива [EMBED] им преспокойно игнорируется. Выходит, этот метод подходит для Flex-разработчиков,но никак не годится для работающих в Adobe Flash.
Метод встраивания шрифта в Adobe Flash достаточно прост. Шрифт нужно включить в библиотеку проекта и залинковать для использования в приложении.
1. Включаем шрифт в библиотеку проекта: - открываем файл *.fla. В меню проекта нажимаем на Library, в открывшемся окне щелкаем правой кнопкой на нижнем поле и выбираем New Font.
2. В открывшемся окне выбираем нужный шрифт и ставим галочку BitmapText. Обязательно нужно обратить внимание на указываемый размер встраиваемого шрифта. Дело в том, что в проект шрифт встраивается только указанного размера, и если в проекте нужно использовать шрифт в нескольких размерах, его нужно встроить с каждым из используемых размеров отдельно. После нажатия на OK шрифт появится в списке.
3. Для линковки шрифта в проект: щелкаем правой кнопкой по шрифту, выбираем Linkage... и отмечаем две галочки Export for ActionScript и Export in first frame. После нажатия на OK шрифт будет доступен для использования в проекте.
Использование встроенного шрифта в проекте.
1. Создаем текстовое поле TextField и устанавливаем для него embedFonts = true. Также создаем объект TextFormat через который будем устанавливать шрифт:
var Txt:TextField = new TextField(); Txt.embedFonts = true; var TFormat:TextFormat = new TextFormat();
3. Выводим текст и устанавливаем для него формат. Директива setTextFormat должна применяться после установки самого текста:
4. После вывода текстового поля на экран, текст в нем будет отображен встроенным в проект шрифтом Arial.
Всего комментариев 11
Комментарии
24.08.2012 21:32 | |
Если я верно вижу, то у вас установлена третья версия (CS3), по этому теги EMBED и не работают, потому что такая возможность появилась кажется только с пятой версии.
|
27.08.2012 12:57 | |
Больше всего такой способ нужен при использовании сглаживания Bitmap text, чтобы среда отхинтовала "пиксельный" шрифт. Тема поднималась на форуме.
|
27.08.2012 14:35 | |
Мне пришлось встраивать шрифт наоборот, чтобы он не сглаживался, а оставался четким.
|
08.09.2012 18:16 | |
в cs4 Embed работает
|
10.09.2012 11:39 | |
> в cs4 Embed работает
Я добавил в заголовок, что это для CS3. Не у всех есть возможность перейти на более высокую версию. |
22.09.2012 01:18 | |
эмбед работает в бесплатном flexSDK
|
Последние записи от Korchy
- Встраивание шрифта в Adobe Flash CS3 (24.08.2012)
- О дрожании, или при чем здесь twips (21.05.2012)