2012-09-05 42 views
1

更改一个字的颜色在一个动态文本我有这样的功能:我怎样才能在AS 3

private function boldVerb(_phrase:String, _verb:String):String 
{ 
    var newHtmlText:String = ""; 

    var pattern:RegExp = new RegExp([_verb]); 

    newHtmlText = _phrase.replace(pattern, "<b>" + _verb + "</b>"); 
    return newHtmlText; 
} 

而且我想改变这种“动词”,该函数接收的颜色。在AS3中可能吗?

+2

你有没有尝试'<字体颜色=“#颜色”>'的标签,而不是在这个函数“b”的标签? OMG! – Vesper

回答

1

肯定。您可以使用样式表或者使用font标签(假设它是一个HTML文本框)。

<font color='#FF0000'>This is red</font> 

参见documentation here

+0

OMG!我怎么能忘记这个?谢谢 :) – bsberti

0

而且,因为这是格式化的,你可以有.verb类样式,然后用标签类属性动词跨度,但是你想将它漆成文字的HTML - 这是更大的灵活性。

0
private function boldVerb(_phrase:String, _verb:String):String 
{ 
    var newHtmlText:String = ""; 

    var format:TextFormat = new TextFormat(); 
    format.color = 0x990000; 

    var pattern:RegExp = new RegExp([_verb]); 

    newHtmlText = _phrase.replace(pattern, "<b>" + _verb + "</b>"); 
    textField.setTextFormat(format); 

    return newHtmlText; 
} 

如果文本框是在舞台上这应该工作的文本字段,但是这是你如何做到文本格式在AS3,做了更多信息的“AS3的TextFormat”谷歌搜索。首先,创建一个新的TextFormat对象,并给它的属性,我选择了一个暗红色#990000(0x990000在AS),然后把它应用到文本字段。我相信你想要的字符串格式本身,我不记得,如果在Flash是可能的,但你肯定可以编辑文本字段本身。所以你可能必须将一些文本字段串在一起才能得到一串带有一个重音字的文本。希望能让你更近一步!祝你好运!