繁体   English   中英

as3格式化文本字段

[英]as3 formatting a textfield

我在as3中动态创建文本字段,并使用TextFormat类格式化它们。 我在选择要应用于文本字段的字体的确切“样式”时遇到了一些问题。 到目前为止我的代码看起来像:

   formatT = new TextFormat( );
   formatT.bold = false; 
   formatT.color = 0x000000; 
   formatT.font = "TradeGothic";    
   formatT.size = 16;

    var textItem = new TextField();
    textItem.text = "foobar";
    textItem.setTextFormat(formatT);
    addChild(textItem);

这项工作(“贸易哥特式”适用于所附文本),但我无法弄清楚如何应用特定风格的“贸易哥特式”,例如“Light Oblique”。 有没有办法可以使用TextFormat类指定它?

谢谢。

您需要找到所需字体的名称:

var fonts = Font.enumerateFonts(true);
fonts.sortOn("fontName", Array.CASEINSENSITIVE);
for each(var f:Font in fonts)
     trace(f.fontName);

您应该会看到“TradeGothic”的多个列表。 我猜你想要的是“TradeGothic Light Oblique”,例如:

formatT.font = "TradeGothic Light Oblique";

由于你的字体不常见,我建议嵌入它 - 否则它将无法在没有安装该字体的计算机上正确呈现(参见此处 )。 嵌入字体后,您必须指定:

textItem.embedFonts = true;

顺便说一句,如果你只想列出嵌入字体的名称,请为参数指定false

var embeddedFontsOnly = Font.enumerateFonts(false);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM