当前位置: 首页 > 图文教程 > Flash动画 > Flash动画基础 > flash9对html文本的支持

Flash动画基础
巧用XML做多语言界面的FLASH
Flash页面如何通过校验
在Dreamweaver中为插入的Flash添加透明
Flash 8 少为人知的特性
“SWFText”让Flash文字动起来
制作Flash声音的压缩与效果处理
实例详解AS代码完成Flash补间动画
谈Flash脚本与时间轴动作的执行顺序
Silverlight初级教程-库教程
全面掌握Flash 按钮教程
Flash格斗动画的动作设计和动作的制作
卸载Flash插件的方法
Flash CS4新功能介绍
控制Flash8里的flvs视频播放停止
Flash教程:全面掌握按钮相关内容
造成Flash动画文件增大原因与解决的方法
SWFObject最实用的功能
安装配置Flex3 SDK用来开发Flash10
Flash教程:如何简单使用钢笔铅笔
无法安装flash player该如何解决?

Flash动画基础 中的 flash9对html文本的支持


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 57 ::
收藏到网摘: n/a

flash对文本支持一直不好,特别是对html文本,支持的更弱。这一问题直到flash10只才得到提升。可是我们的使用还主要集中在flash9。

在htmlText中,img标签不能独占文本的整个宽度,文本会和图片显示在一行,而且img只能设置左对齐和右对齐。每个图片就是一个Loader对象,通过给img标签设置id,可以用t.getImageReference (’id’)获取到img的容器。可以使用这个功能来批量的加载图片获取图片的Loader:)

在TextField里面有autoSize的属性,通过设置autoSize可以让文本自动使用内容的高度:
如果 autoSize 设置为 TextFieldAutoSize.NONE(默认值),则不会进行调整。

如果 autoSize 设置为 TextFieldAutoSize.LEFT,会将文本视为左对齐文本,这意味着该文本字段的左边距保持固定,在右边可调整单个文本字段行。 如果文本中包括换行符(例如 “\n” 或 “\r”),则会另外调整底边来适合文本的下一行。 如果 wordWrap 也设置为 true,则仅调整文本字段的底边,而右边距保持固定。

这样,设置autoSize 不为none,图片的高度就会字适应,但是,在图片在家完成之前,文本的高度不是最终高度,如果下面的内容是依赖文本位置的话,就需要侦听到文本高度的变化,可以使用change时间来侦听,每个图片加载完成,文本都会出发一个change事件,这样每次change的时候重新布局就可以了。

代码:

//舞台上添加一个文本框,设置名字为t
t.autoSize = 'center';
t.htmlText = '
<div id="blogMar">
<img src="http://img1.qq.com/blog/pics/15261/15261128.jpg" alt="" /> <img src="http://img1.qq.com/blog/pics/15256/15256935.jpg" alt="" />
唯美小龙女惊艳写真
<img src="http://img1.qq.com/blog/pics/15250/15250542.jpg" alt="" /> 希拉里大学小样照</div>
';
//
t.addEventListener('change',htmlChange);
function htmlChange(e)
{	trace('-----htmlChange-----') //可以看到,textHeight是不会改变的	trace(t.textHeight);	trace(t.height);
}






输出结果:


-----htmlChange-----
117
121
-----htmlChange-----
117
190
-----htmlChange-----
117
251