所以我有一个恼人的问题,我不能解决。我正在为iOS创建Flash Pro/AS3应用程序。我有一个按钮,我想改变它的标签字体:
var ButtonTextFormat:TextFormat = new TextFormat("Showcard Gothic", 120);
//ButtonTextFormat.size = 120;
//ButtonTextFormat.font = "Showcard Gothic";
//ButtonTextFormat.embedFonts = true;
ButtonTextFormat.color = 0x00FF00;
//ButtonTextFormat.embedFonts = true;
SMButton.label = "PUSHME!";
SMButton.setStyle("textFormat", ButtonTextFormat);
我只是使用了Flash组件工具箱中的标准按钮。它在调试期间正确显示,但一旦加载到iPhone中,标签将更改为默认字体。
我确实通过Text>Font Embedding...
嵌入了所需的字体,它适用于我拥有的文本字段,但为什么不是按钮标签?
我已经尝试过ButtonTextFormat.embedFonts = true;
,但我得到一个错误:
1119: Access of possibly undefined property embedFonts through a reference with static type flash.text:TextFormat.
任何帮助都会很感激。谢谢。
embedFonts属性是TextField类,而不是TextFormat类。
按照以下说明正确地嵌入和使用嵌入的字体
我最近也遇到了同样的问题。对于组件,必须使用. setstyle()方法设置embedFonts。
SMButton.setStyle("fontFamily", "Showcard Gothic");
SMButton.setStyle("embedFonts", true);
在Flash IDE中,您可能需要将字体添加到库中,然后导出为ActionScript。例如类名"treasure apdeadhand"
然后在你的文档类中:
import flash.text.Font;
Font.registerFont(TreasureMapDeadhand);
如果你多次链接你的字体,另一个选择,虽然不是必要的,是将你的字体存储在一个公共变量。
public var f:Font = new TreasureMapDeadhand();
SMButton.setStyle("fontFamily", f.fontName);
SMButton.setStyle("embedFonts", true);
无论如何,我希望这有助于!