在运行时资产中使用字体 - actionscript3

时间:2009-06-19 14:51:37

标签: flash actionscript-3

我正在尝试实现此处的示例:

http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d9a.html

我已经成功分享了影片剪辑,但字体似乎不可用。

我正在使用AS3 for Flash - 而不是Flex。

1 个答案:

答案 0 :(得分:0)

刚刚找到答案。导入时需要注册字体。

private function onComplete(evt:Event):void {

  var loaderInfo:LoaderInfo = evt.target as LoaderInfo;

  loaderInfo.removeEventListener(
    Event.COMPLETE,
    onComplete
  );

  var appDomain:ApplicationDomain = loaderInfo.applicationDomain;

  var thisIsMyFont:Class;

  try {

    thisIsMyFont = appDomain.getDefinition(
      "ThisIsMyFont"
    ) as Class;

  } catch(ex:Error) {

    throw new Error(
      "The font could not be found!"
    );

  }

  Font.registerFont(thisIsMyFont);

  trace(
    "Now there are " + Font.enumerateFonts().length + " fonts available"
  );

}