2011-01-31 1 views
3

Я недавно преобразовал проект Flex3 AIR в Flex4, поэтому теперь он использует Flex4.1 sdk и <s:WindowedApplication>. Это большой проект и кропотливо обновлял все жизненно важные биты кода для работы с Flex4, который теперь компилируется happliy.Искры внутри элемента mx не отображает встроенный шрифт

Большинство компонентов в проекте делятся на несколько поколений из компонента, основанного на mx, поэтому я еще не обновил его, чтобы искра из-за рабочей нагрузки. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу заставить встроенный шрифт работать для искровых компонентов, которые я теперь добавляю к моим mx-компонентам.

Например, я отредактировал один из моих компонентов (на основе mx) и добавил некоторые элементы к нему. Мой встроенный шрифт должен иметь embedAsCFF = false, чтобы он работал для моих mx-компонентов. Таким образом, чтобы получить эту также врезать для искры, я должен быть в состоянии просто вставлять его снова embedAsCFF = True, как показано ниже:

@font-face 
{ 
    src: url("assets/fonts/MyriadWebPro.ttf"); 
    font-family: mainWithCFF; 
    font-style: normal; 
    font-weight: normal; 
    font-anti-alias-type: "advanced"; 
    embedAsCFF: true; 
} 

s|Label{ 
    font-family: mainWithCFF; 
} 

Я попробовал основной пример этого, что Adobe предоставляет и этот пример работает отлично, но в моем сложном проекте он не работает. Я не получаю никаких ошибок, но вместо компонента искры с использованием MyriadWebPro по умолчанию используется Times.

Интересно, это потому, что мой компонент основан на mx, а не на основе искры. Может быть, это работает, только если вы используете компонент mx внутри искрового компонента? Если да, то кто-нибудь знает о решении проблемы, где у вас есть компонент mx, и хотите, чтобы внутри этой метки была искра?

ответ

3

Если ваш компонент MX (Halo), вы хотите, чтобы embedAsCFF был ложным.

Для компонентов искры вы внедряетеAsCFF: true.

Кроме того, я не уверен, что ваше расширенное Anti Aliasing правильное.

Спарк Пример:

 
@font-face 
{ 
    font-family: "Myriad Web Pro"; 
    src: url("./assets/fonts/MyriadWebPro.ttf"); 
    font-weight: normal; 
    embedAsCFF: true; /* Spark */ 
    advancedAntiAliasing: true; 
    unicodeRange: 
     U+0041-U+005A, /* Upper-Case [A..Z] */ 
     U+0061-U+007A, /* Lower-Case a-z */ 
     U+0030-U+003F, /* Numbers [0..9] */ 
     U+0020-U+002F, /* Space + Punctuation [ !"#$%&'()*+,-./ ] */ 
     U+003A-U+0040; /* Special Chars [ :;[email protected] ] */ 
} 

MX Halo Пример:

 
@font-face 
{ 
    font-family: "Myriad Web Pro"; 
    src: url("./assets/fonts/MyriadWebPro.ttf"); 
    font-weight: normal; 
    embedAsCFF: false; /* Halo */ 
    advancedAntiAliasing: true; 
    unicodeRange: 
     U+0041-U+005A, /* Upper-Case [A..Z] */ 
     U+0061-U+007A, /* Lower-Case a-z */ 
     U+0030-U+003F, /* Numbers [0..9] */ 
     U+0020-U+002F, /* Space + Punctuation [ !"#$%&'()*+,-./ ] */ 
     U+003A-U+0040; /* Special Chars [ :;[email protected] ] */ 
} 
+0

Спасибо! это было очень полезно! –