Статический шрифт, встроенный в SWC, не используется в SWF - PullRequest
1 голос
/ 06 сентября 2011

Проект flashdevelop (компилируется с помощью flexsdk 4.5.0) использует ресурсы из других SWC. В основной SWF, когда активы добавляются на сцене, текст не отображается, когда установлен шрифт.

Я пробовал как встраивать, так и не встраивать шрифты в различные SWC, но, похоже, пока ничего не работает.

Какую стратегию внедрения я должен использовать?

Примечания. Я использую классические текстовые поля, пробовал встраивать и не встраивать шрифты в различные SWC.

Ответы [ 2 ]

8 голосов
/ 06 сентября 2011

Внедрение шрифтов может занять некоторое время, поэтому ознакомьтесь с моим постом об этом здесь: http://divillysausages.com/blog/as3_font_embedding_masterclass

Простые вещи для проверки:

  • Установлено ли embedFonts значение true в TextField?
  • Ваш шрифт встроен в embedAsCFF=false? В flex 4.5 это правда, но вам нужно только true, если вы используете компоненты Spark.
  • Включены ли глифы, которые вы хотите использовать? Во flashdevelop откройте swc (кнопка +) и посмотрите, сколько глифов встроено для шрифта, который вы ищете.
  • Один и тот же шрифт встраивается дважды в 2 разных SWF (статические текстовые поля также учитываются). Кажется, есть ошибка во Flash, когда он берет первый экземпляр встроенного шрифта и игнорирует остальные. Например, если у вас есть SWC A, в котором встроен «hello world» во встроенном Arial (скажем, в статическом текстовом поле), то в SWC B, даже если в него встроен весь шрифт, будет использоваться Arial из SWC A ( если SWC B не имеет другого «веса», например, жирный).
0 голосов
/ 29 декабря 2014

Возможно, это слишком поздний ответ, но я искал ответ на подобную проблему, и я надеюсь, что это поможет кому-то еще.

У меня возникла та же проблема: мой визуальный контент разрабатывался с использованием Flash CS6 (опубликован как SWC), а мой «проигрыватель» разрабатывался с использованием Flash Builder 4.7. На Mac все работало как прелесть, но когда я переключился на Windows, шрифты компонентов SWC (Arial, ничего особенного) немного отличались, вызывая визуальные смещения.

После нескольких дней попыток выяснить, в чем проблема, я обнаружил, что когда я добавил компонент Flex TextInput в Flex, компоненты swc сошли с ума со шрифтами. Мой обходной путь - удаление всех компонентов текста с искрой из плеера (flex); Теперь работает отлично.

Не могу понять, почему добавление s:TextInput вызывает такое поведение или как его предотвратить.

...