注册多个.AS文件的字体

时间:2011-06-16 20:25:52

标签: actionscript fonts

我在我的ActionScript文件中嵌入了一些字体,如下所示:

[Embed(source="DAXCOMPL.TTF", fontName="DaxCompact-Light", mimeType='application/x-font', embedAsCFF='false')]
private var MyFont:Class;

这是在mxml放置的主Canvas中完成的。这个画布创建了几个较小的画布并将它们作为孩子放置。我将这些子画布中的每一个拆分为单独的.as文件以便于使用。我遇到的问题是我想在这些.as文件中使用这种字体,而不必传递它。有可能以某种方式全局注册字体吗?

2 个答案:

答案 0 :(得分:1)

我将它设置为自己文件中的公共静态const。如果我还需要嵌入一堆图标,我会这样做。很容易说出Icons.ADD或其他东西。

package your.project.someplace
{
    public final class MyFonts{
         [Embed(source="DAXCOMPL.TTF", fontName="DaxCompact-Light",mimeType='application/x-font', embedAsCFF='false')]
         public static const DAXCOMPL:Class;

    }
}

现在,只要您需要使用它,请调用静态类。

MyFonts.DAXCOMPL;

答案 1 :(得分:1)

哦,我以为你在使用FLASH ......但看起来你使用的是MXML(Flex),在这种情况下你可以在样式表中设置样式。

@font-face
{
src:                url("DAXCOMPL.TTF");
fontFamily:             DaxCompact;
}

然后在您的主应用文件中,您可以说<mx:Style source="myCSSFile.css"/>