Actionscript 3 AS3文本字段字体

Actionscript 3 AS3文本字段字体,actionscript-3,flash,fonts,formatting,textfield,Actionscript 3,Flash,Fonts,Formatting,Textfield,我在AS3中设置字体时遇到问题。我用论坛和问题中的资源尝试了几种不同的方法,但都无法奏效 以下是我使用的代码: private function addContentToMovieClips(Text:String, MC:MovieClip):void { var myFont = new Trebuchet(); var tFormat:TextFormat = new TextFormat(); tFormat.font =

我在AS3中设置字体时遇到问题。我用论坛和问题中的资源尝试了几种不同的方法,但都无法奏效

以下是我使用的代码:

    private function addContentToMovieClips(Text:String, MC:MovieClip):void
    {
        var myFont = new Trebuchet();

        var tFormat:TextFormat = new TextFormat();
        tFormat.font = myFont.fontName; 
        tFormat.color = 0x000000;
        trace(tFormat.font);

        var tf:TextField = new TextField();
        tf.defaultTextFormat = tFormat;
        tf.embedFonts = true;
        //tf.antiAliasType = AntiAliasType.ADVANCED;
        tf.text = Text;
        MC.addChild(tf);
        tf.width = 300;
    }
在库中,我有一个名为“font2”的字体,链接为“Trebuchet”。我没有发现编译器错误,文本似乎是在屏幕上创建的,但没有显示任何内容

以下行用于调试:

trace(tFormat.font);
并按预期返回“投石机MS”

如果你能帮助我理解为什么这不起作用,我将非常感激

干杯

帕特里克

编辑:删除时

tf.embedFonts = true;

文本以正确的字体显示。不知道为什么,但这现在起作用了。

您应该将代码粘贴到嵌入字体的位置。但既然我也遇到了同样的问题,我想你错过了embedAsCFF指令:

[Embed(source="../someFont.ttf", 
    fontName = "myFont", 
    mimeType = "application/x-font", 
    fontWeight="normal", 
    fontStyle="normal", 
    unicodeRange="englishRange", 
    advancedAntiAliasing="true", 
    embedAsCFF="false")]