![]() |
|
||||||||||
|
|||||
|
Регистрация: Aug 2008
Адрес: 53 E
Сообщений: 60
|
willis83, встраивание шрифтов в Adobe Flash CS4 (Professional) дело несложное. Раз уж вы кучу инфы перерыли и так и не поняли, как это делается, попытаюсь объяснить Вам еще раз. Может у меня лучше получится?!))
Есть два способа встраивания шрифтов в свое Flash-приложение: -традиционный Flash способ. В среде разработки Adobe Flash CS4 открываем библиотеку символов. Правой кнопкой мыши вызываете контекстное меню, в котором выбираете пункт New Font... Далее из выпадающего списка шрифтов (Font), установленных в системе, выбираем тот, который собираемся использовать в своем Flash-приложении. Убираем галочку с пункта Bitmap text. Пункт Name играет чисто косметическую роль для отображения имени шрифта в библиотеки символов. Теперь ставим галочки напротив пунктов Action For ActionScript и Export In Frame 1. После всего этого жмем "Ok" (Flash выведет Вам предупреждение о том, что класс шрифта не найден и будет создан автоматически при экспорте в SWF-файл, можете смело игнорировать данное предупреждение). Вот и всё - шрифт встроен. Однако, Вы можете быть очень удивлены, что шрифт, поддерживающий русский язык фактически не отображает его в проекте. Такое часто происходит в CS4 с ttf-шрифтами, подерживающими русский язык. Суть проблемы со шрифтами TTF заключается в том, что в большинстве (но не во всех!) существующих кириллических шрифтов Unicode-индексы символов, изображающих русские буквы, соответствуют латинской кодовой таблице CP1252, а не кириллической CP1251. Поэтому среда разработки попросту не обнаружит глифов для отображения кирилицы, а следовательно, если текстовое поле отоборжает текст с помощью встроенных шрифтов (myTextField.embedFonts=true) русский текст отображен не будет. В этом случае приходит на помощь нетрадиционный для Flash способ встраивания шрифтов...Способ второй "Flex спешит на помощь" читай ниже... -Второй способ заключается во встраивании шрифтов не с помощью среды разработки Flash, а с помощью AS 3.0 кода и библиотеки Flex SDK. Последняя распространяется бесплатно, актуальный релиз можно скачать с официального сайта корпорации Adobe. Итак скачиваем Flex SDK, создаем новый as-файл следующего содержания (к примеру): package { import flash.display.Sprite; import flash.text.*; public class Fonts extends Sprite{ [Embed(source="c:/windows/fonts/Arial.ttf", fontFamily="Arial")] private var arial:Class; [Embed(source="c:/windows/fonts/univers ru.ttf", fontFamily="Univers")] private var univers:Class; [Embed(source="c:/windows/fonts/domino.ttf", fontFamily="a_DomIno")] private var domino:Class; [Embed(source="c:/windows/fonts/lcdnova.ttf", fontFamily="a_LCDNova")] private var lcdnova:Class; [Embed(source="c:/windows/fonts/huxl_c.ttf", fontFamily="a_HuxleyCaps")] private var huxleycaps:Class; [Embed(source="c:/windows/fonts/crystal.ttf", fontFamily="Crystal")] private var crystal:Class; public function Fonts() { Font.registerFont(arial); Font.registerFont(univers); Font.registerFont(domino); Font.registerFont(lcdnova); Font.registerFont(huxleycaps); Font.registerFont(crystal); } } } ВНИМАНИЕ!!! Эти два способа не взаимоисключаемые, их можно использовать в комбинации. Например, шрифты, с которыми не возникает проблем могут быть встроены с помощью традиционного метода (да, в таком случае, не забудьте в первом кадре fla-файла с помощью статического метода класса Font - registerFont, добавить втроенные шрифты в глобальный список шрифтов) а проблемные путем подключения класса Fonts. Будьте внимательны, возможно такое, что шрифты, которые нормально внедряются через библиотеку символов - оплошаются при их внедрении с помощью Flex SDK (а чаще всего так и происходит). |
![]() |
Часовой пояс GMT +4, время: 06:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|