我在AS3中有以下代码:
var str:String = '<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Arial" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">Lo<FONT COLOR="#0000FF">re<FONT FACE="GG Superscript">m</FONT></FONT><FONT FACE="GG Superscript"> Ip</FONT><FONT COLOR="#990000"><FONT FACE="GG Superscript">su</FONT>m i</FONT>s simply dummy text </FONT></P></TEXTFORMAT>';
trace('BEFORE: '+str);
txt.htmlText = str;
trace('AFTER: '+txt.htmlText);我面临的问题是,之前和之后的跟踪文本是非常不同的。它们如下:
在跟踪之前
<TEXTFORMAT LEADING="2">
<P ALIGN="LEFT">
<FONT FACE="Arial" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">Lo
<FONT COLOR="#0000FF">re
<FONT FACE="GG Superscript">m</FONT>
</FONT>
<FONT FACE="GG Superscript"> Ip</FONT>
<FONT COLOR="#990000">
<FONT FACE="GG Superscript">su</FONT>
m i
</FONT>
s simply dummy text
</FONT>
</P>
</TEXTFORMAT>跟踪后的
<TEXTFORMAT LEADING="2">
<P ALIGN="LEFT">
<FONT FACE="Arial" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0">Lo
<FONT COLOR="#0000FF">re
<FONT FACE="GG Superscript">m
<FONT COLOR="#000000"> Ip
<FONT COLOR="#990000">su
<FONT FACE="Arial">m i</FONT>
</FONT>
</FONT>
</FONT>
</FONT>s simply dummy text
</FONT>
</P>
</TEXTFORMAT>htmlText似乎正在重新排列html标记。尽管输出是相同的,但我需要返回原来的html,因为我正在制作文本编辑器,而AFTER htmlText正在破坏我的标记计算。有什么办法吗?
提前谢谢。
发布于 2012-02-28 03:23:57
是否有使用<FONT>标记进行样式设计的项目要求?在Flash中,对使用基本HTML标记的样式的支持是非常有限和错误的。我强烈建议使用CSS来使用flash.text.Stylesheet类格式化文本。你会发现它更可靠,你的代码也会更简洁。
要在本教程中实现CSS,请查看TextFields。
https://stackoverflow.com/questions/9465705
复制相似问题