当前位置:主页 > 设计教程 > Flash > 正文

flash9图文混排的高度设置

来源:|作者:|时间:2009-02-01|人气:|编辑:

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

    最近更新
    简而精致的MILKO牛奶包装欣赏

    简而精致的MILKO牛奶包装欣赏

    分 类: 包装设计
    日 期: 2015-07-14
    人 气: 93

    Irina Vinnik精美的童话书籍设计欣赏

    Irina Vinnik精美的童话书籍设计欣赏

    分 类: 封面设计
    日 期: 2015-07-14
    人 气: 113

    LOnde戏剧艺术中心2015-2016宣传册设计

    L'Onde戏剧艺术中心2015-2016宣传册设计

    分 类: 画册设计
    日 期: 2015-07-14
    人 气: 94

    耐克篮球探索主题立体字设计

    耐克篮球探索主题立体字设计

    分 类: 字体设计
    日 期: 2015-07-14
    人 气: 97

    耐克Kobe release系列视觉设计

    耐克Kobe release系列视觉设计

    分 类: 平面设计作品
    日 期: 2015-07-13
    人 气: 266