Flash AS3 XML CDATA粗体标记以HTMLText呈现,具有嵌入式字体
-
15-11-2019 - |
题
我只是在尝试通过使用cdata从XML文件导入的数据来获取Flash以在具有嵌入字体的动态文本字段中渲染粗体文本。任何人都知道如何做到这一点?
xml文件:
<description><![CDATA[ FOR THE PAST TWO YEARS, <b>SUPERFAD</b> HAS WORKED CLOSELY WITH THE <b>MARTIN AGENCY</b> TO VISUALIZE THE ORIGINAL WORKS OF <b>SPORT CAMPAIGN</b>. THE CAMPAIGN SPOTLIGHTS THE EXTREME ATHLETES OF THE VARIOUS EVENTS AS ARTISTS IN THEIR OWN WORLD, USING THE TOOLS OF THEIR SPORT TO CREATE LASTING WORKS OF ART]]></description>
.
和AS3代码:
project_desc = myXML.projects.project[cp].description.toUpperCase();
container.header.t_desc.htmlText = project_desc;
. 解决方案
Wrap the text you want to be bold in span tags with a class name.
<description><![CDATA[ FOR THE PAST TWO YEARS, <span class="myBoldText">SUPERFAD</span> HAS WORKED...</description>
Then use a StyleSheet object to style it within your actionScript.
var my_styleSheet = new StyleSheet();
var n:Object = new Object();
n.fontWeight = 'bold';
my_styleSheet.setStyle('.myBoldText', n);
container.header.t_desc.styleSheet = my_styleSheet;
container.header.t_desc.htmlText = project_desc;
Don't forget to import the styleSheet class!
import flash.text.StyleSheet;
More info on the StyleSheet class here: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/StyleSheet.html
不隶属于 StackOverflow