获取项目符号,粗体,嵌入的文本以在Flash CS5中显示

时间:2011-09-29 01:10:25

标签: actionscript-3 flash-cs5

我怀疑任何人都可以提供帮助,但我认为我发布以防万一......

我正在尝试让Flash使用粗体嵌入字体显示项目符号列表。

我发现我可以用子弹获得粗体字体,但不能嵌入。或嵌入式字体,其子弹不是粗体,或粗体嵌入字体,没有项目符号。

这令人非常沮丧(同时也令人讨厌)。

我将字体嵌入到库中并通过actionscript导出它们。这是我的代码......

var tf:TextField = new TextField();
        tf.multiline = true;            
        tf.width = 100;         
        tf.x = 200;
        tf.y = 100;
        tf.antiAliasType = AntiAliasType.ADVANCED;
        tf.wordWrap = true;
        tf.autoSize = TextFieldAutoSize.LEFT;
        tf.embedFonts = true;


        var bulletTF:TextFormat = new TextFormat();   


        var myFontBold:VerdBold = new  VerdBold();
        var myFont:Verd = new  Verd();

        bulletTF.font = myFont.fontName;                        

        bulletTF.size = 12;
        bulletTF.bullet = true;
        tf.htmlText ="This is the first bullet, but this text should wrap correctly.<br>and another<br>And another still" ;
        tf.setTextFormat(bulletTF);         

        addChild(tf);

以上代码生成常规字体嵌入项目符号列表。

如果我将bulletTF.font行改为bulletTF.font = myFontBold.fontName字体变粗,子弹就会消失。

有没人处理过这件事?如果是这样......你的解决方案(或解决方法)是什么。

提前做了很多事。

1 个答案:

答案 0 :(得分:0)

您需要嵌入粗体字体和普通字体。此外,您可以通过直接设置HTML标记来获得更可预测的结果,而不是使用TextFormat来设置格式:

var myFontBold:VerdBold = new  VerdBold();
var myFont:Verd = new  Verd();

tf.htmlText = '<p><font face="' + myFont.fontName + '">Some regular text</font></p><ul><li><font face="' + myFontBold.fontName + '">Some bold text</font></li></ul>';

这很丑,但通常应该有效。使用<b>也可以,但我认为显式设置字体名称更可靠。