代码之家  ›  专栏  ›  技术社区  ›  Guerreiro

如何使用嵌入SWC的字体

  •  3
  • Guerreiro  · 技术社区  · 12 年前

    我从Flash CS3中导出了一个嵌入了字体的SWC。

    现在我想在一些文本字段中使用它,但我不知道如何使用字体。

    2 回复  |  直到 12 年前
        1
  •  2
  •   Guerreiro    12 年前

    完成!以下是我的解决方案:

    [Embed(source="res/guardanapo.otf", fontName="guardanapo", fontFamily="guardanapo", unicodeRange="U+0020-U+002F,U+0030-U+0039,U+003A-U+0040,U+0041-U+005A,U+005B-U+0060,U+0061-U+007A,U+007B-U+007E", advancedAntiAliasing="false", embedAsCFF="false")]
    public static const fonte:Class;
    

    我想从SWC嵌入字体,但现在已经没有必要了。但是,如果你知道如何做到这一点,也许现在有人在为此而苦恼。

        2
  •  0
  •   mfa    12 年前

    试试这个。myLoader是您使用其库中的字体加载swf/swc的加载器。myTextField是一个预先存在的文本字段。我将embedFonts设置为true,但您可能不需要它。

    var MyFont:Class = myLoader.contentLoaderInfo.applicationDomain.getDefinition("FontClassName");
    
    var embeddedFont:Font = new MyFont();
    
    var textFormat:TextFormat = new TextFormat();
    textFormat.font = embeddedFont.fontName;
    textFormat.size = 24;
    
    myTextField.setTextFormat(textFormat);
    myTextField.embedFonts = true;
    

    也许您可以在swf中包含一个具有要使用的字体的字体获取类。可以有静态方法将字体应用于字段,或者返回给定字体类名的字体名称。这可以帮助保持应用程序的其余部分更干净。

    推荐文章