2010-11-24 23 views
2

我有一個從xml獲取文本的文本框。我添加了一個函數來更改選定文本的字體大小,並且它可以正常工作,直到我再次加載文本。然後,它只是忽略所有其他尺寸,但第一個。AS3:有多個字體大小標籤的htmlText?

這是tekst HTML文本:

<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="PresentationOnline_text" SIZE="63" COLOR="#FF9999" LETTERSPACING="0" KERNING="0">a<FONT SIZE="33">b</FONT></FONT></P></TEXTFORMAT> 

而我只是設置txtText.htmlText了這一點。在一個文本框中不可能有多個字體大小?

當我改變我做這大小:

textFormat = txtText.getTextFormat(start, end); 
textFormat.size = Number(textFormat.size) - 1; 
txtText.setTextFormat(textFormat, start, end); 

什麼我失蹤?

謝謝!

編輯

作品時,我這樣做是按以下順序:

txtText.defaultTextFormat = textFormat; 
txtText.setTextFormat(textFormat); 
txtText.htmlText = text; 

但我知道我做了它周圍的其他方法一些好的原因,我不記得..

回答

1

我添加了一個函數,用於更改選定文本的字體大小,並且它可以正常工作,直到我再次加載文本。

setTextFormat()影響已存在的文本格式。在setTextFormat()之後插入的任何文本都將被手動應用,或者使用replaceSelectedText()將被格式化爲文本字段的默認文本格式。

要設置文本字段的默認文本格式,您必須使用defaultTextFormat屬性,該屬性是可讀/寫的。

此信息有幫助嗎?

+0

這或多或少是我所做的。問題在於它的順序。如果我沒有任何格式化,我需要先設置htmlText,因爲我嵌入了字體,以及之後是否有格式化。我認爲我編輯的一個變體應該如此,但我需要更多的測試。 – Tinelise 2010-11-25 08:53:30