3

如何使用 FlashDevelop 在 as3 中嵌入字体?我已经阅读了很多关于这个问题的帖子,但没有一个能帮助我解决这个问题。当我使用以下代码时,没有显示任何内容(这是所有代码):

package  
{
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFormat;

    public class Main extends Sprite 
    {
        [Embed(source="/../resources/fonts/andbasr.ttf", fontName = "andbasr", fontWeight = "Demibold", mimeType="application/x-font")]
        private var andbasr:Class;

        public function Main() 
        {
            var textField:TextField = new TextField();
            textField.embedFonts = true;
            var format:TextFormat = new TextFormat("andbasr", 16, 0x000000);
            textField.defaultTextFormat = format;
            textField.text = "Test";
            stage.addChild(textField);
        }

    }

}

“andbasr”只是我发现的一个随机 ttf 文件。知道我做错了什么吗?

4

1 回答 1

9

它工作正常,我刚刚下载了您正在测试的字体。我认为字体没有DemiBold重量,在你的情况下也是如此,因为你不使用 TLF TextField,禁用 DF4 格式的字体嵌入embedAsCFF="false"

[Embed(source="AndBasR.ttf",
        fontName = "myFont",
        mimeType = "application/x-font",
        advancedAntiAliasing="true",
        embedAsCFF="false")]
private var myEmbeddedFont:Class;

//Testing 
var textField: TextField = new TextField();
textField.defaultTextFormat = new TextFormat("myFont", 20);
textField.embedFonts = true;
textField.text = "Test Embedded Font";

addChild(textField);
于 2014-03-12T13:03:50.950 回答