我一直在试图弄清楚一段时间。我通常设法使我的 textFields 正常工作,但这只是让我发疯。
我有这个 TextField,我注入了 HTML 格式的文本(包含在 XML 文件中)。出于某种原因,我几乎所有的标签都被忽略了(<b>
、<i>
、<u>
和)。我只能让它正确呈现标签。我可以使用样式表,但我认为它不会使我的列表工作......<ul>
<li>
<br />
这是设置的方式:
我注入的文本:
<text>
<![CDATA[<b>Some bold text </b>and some normal text <br/><u>This text is underlined</u> normal text to compare<br/><i/>This text is italic</i>]]>
</text>
我的 TextField 是如何设置的:
// When my Class' setup method is called, I set those properties
_tf = _transcript.getTextFormat();
_tf.font = "Verdana";
_tf.size = 12;
_transcript.embedFonts = true;
_transcript.multiline = true;
_transcript.autoSize = TextFieldAutoSize.LEFT;
_transcript.wordWrap = true;
// In an function, later on
_transcript.htmlText = transcript; // transcript is a parameter. Basically, the XML I wrote above
_transcript.setTextFormat(_tf);
我确实嵌入了Verdana(以及变体)。我通过生成大小报告 和跟踪 Font.enumerateFonts() 来确定。如果我在设置后输出 textField 的 htmlText,我会得到:
<P ALIGN="LEFT"><FONT FACE="Verdana" SIZE="12" COLOR="#FFFFFF" LETTERSPACING="0" KERNING="0">Some bold text and some normal text </FONT></P><P ALIGN="LEFT"><FONT FACE="Verdana" SIZE="12" COLOR="#FFFFFF" LETTERSPACING="0" KERNING="0">This text is underlined normal text to compare</FONT></P><P ALIGN="LEFT"><FONT FACE="Verdana" SIZE="12" COLOR="#FFFFFF" LETTERSPACING="0" KERNING="0">This text is italic</FONT></P>
我真的不知道为什么没有任何工作,如果有人有任何想法,我会非常感激!
谢谢
编辑:所以我决定测试我的 XML 中没有 CDATA,并<b>
在我的 AS3 代码中添加标签。也没有用。我不明白如何正确嵌入我的字体,但 Flash 拒绝使用它们。