Actionscript 3 AS3:嵌入两种同名的不同字体

Actionscript 3 AS3:嵌入两种同名的不同字体,actionscript-3,embedded-fonts,Actionscript 3,Embedded Fonts,我使用以下命令在AS3中嵌入字体: [Embed(source="../font/font1.swf", fontName = "FontName1", fontWeight = "bold" )] private var myEmbeddedFont:Class; var _tf: TextFormat; _tf = new TextFormat(); _tf.color = 0x000000; _tf.size = 18; _tf.font = "FontName1"; 现在我想嵌入第

我使用以下命令在AS3中嵌入字体:

[Embed(source="../font/font1.swf", fontName = "FontName1", fontWeight = "bold" )]
private var myEmbeddedFont:Class;

var _tf: TextFormat;

_tf = new TextFormat();
_tf.color = 0x000000;
_tf.size = 18;
_tf.font = "FontName1";
现在我想嵌入第二种字体,它是相同的字体,但不是粗体。 我现在的问题是:两个vont(粗体和非粗体)都有相同的名称


如何使用这两种字体?在嵌入命令中,fontName=“”必须是字体的“真实”名称。我可以为字体名称设置别名吗?

没有什么比设置字体的“真实”名称更重要的了,您可以为字体使用别名

比如: 对于ARIEL(普通):字体名称:ARIEL


对于ARIEL(粗体):字体名称:ARIEL_bold

您希望使用fontFamily而不是fontName。还有,为什么你的字体是.swf?以下是我使用的:

    [Embed(source="../font/font1.ttf", embedAsCFF="false", fontFamily="FontName1")]
    private static const Font:Class;
    [Embed(source="../font/font1_Bd.ttf", embedAsCFF="false", fontFamily="FontName1", fontWeight="bold")]
    private static const FontBold:Class;

有了这个,AS3应该能够用你的字体显示普通和粗体文本。

你在哪里读到它必须是字体的“真实”名称,根据我的经验,情况并非如此:你总是会弄脏并生成两个不同的字体文件。或者遵循以下步骤: