Внедрение шрифтов в Flexbuilder Vs. CS4 - PullRequest
0 голосов
/ 20 января 2010

У меня есть проект AS3 Flex, в который я встраиваю шрифты. Я пытаюсь запустить этот проект из CS4. Однако по какой-то причине текст вообще не отображается.

Код в Flex AS3 выглядит следующим образом:

    [Embed(source='C:/WINDOWS/Fonts/ArialBD.TTF',  fontWeight = 'bold', fontName='ArialBold', unicodeRange='U+0020-U+0020,U+0021-...')] //a bunch of other unicode
    public static var _VerdanaFontBold:Class;  

    [Embed(source='C:/WINDOWS/Fonts/Arial.TTF', fontWeight = 'regular', fontName='Arial', unicodeRange='U+0020-U+0020...')] //a bunch of other unicode
    public static var _VerdanaFont:Class;  

А в конструкторе расширенного текстового поля, в котором появляется мой текст, у меня есть:

        Font.registerFont(_VerdanaFontBold);
        Font.registerFont(_VerdanaFont); 

Я нашел эту статью о встраивании метаданных с Flash, но я также не смог заставить это работать (я попробовал systemFont = "Arial", а также предложил в комментариях внизу этой статьи ).

Поэтому я попытался закомментировать вышеприведенные строки и сделать это по-другому. В CS4 я понимаю, что я должен создать пустое текстовое поле в режиме конструктора в FLA-файле. Затем я могу выбрать шрифты для встраивания в панель свойств. Я выбрал verdana (верхний и нижний регистр, знаки препинания, номер и т. Д.). Но опять же, когда я запускаю приложение в CS4, текстовое поле остается пустым.

Тот факт, что я встраиваю шрифт в пустое текстовое поле, а не тот, который вызывается классом документа, который я установил, не должен иметь значения, верно? - шрифт должен быть просто встроен в SWF и доступен для использования. Но это пусто.

У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 20 января 2010

для встраивания шрифта во flash cs4 Я бы сделал следующее.

  1. в среде flash, добавьте символ шрифта на панель библиотеки.Убедитесь, что нажали кнопку «Экспорт для действий».Обратите внимание на название класса шрифта.Это будет имя класса шрифта, который вы будете использовать в своем коде as3.Наконец, нажмите ОК и проигнорируйте следующее предупреждающее сообщение.

  2. Затем вы можете получить доступ к этому классу шрифтов из ваших файлов as3.Например,

    import flash.text.Font;...

    var titleField: TextField = new TextField ();

    var myFont: Font = new nameOfFontClass ();// см. пункт 1

    var format: TextFormat = new TextFormat ();format.font = myFont.fontName;

    titleField.defaultTextFormat = format;titleField.embedFonts = true;

надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...