flash.text.engine 入门笔记(一)

Flash Player 10中提供的新功能之一:强大的文本排版能力无疑是Flash Player 10中最复杂的功能之一,连Adobe自己都觉得太复杂了,以至于推出一个TextLayout Framework来协助开发 者进行开发。
  小生我也是正在入门中,先撇开TextLayout Framework不说,从最底层探索吧,一起在这里分享下我的学习笔记。

第一节:牛逼无比,万物之主的TextBlock(
flash .text.engine.TextBlock)
  何为TextBlock?顾名思义我们可以称之为文本块,例如我们的一段文字就是视为放在一个文本块里,文本块只是负责保存文本的内容和格式,仅当需要输出时才会确定输出文本的长度和面积。废话不说,看代码

var txt:String = "这是一段非常长非常长的文本,即便实际上看上去并不长!";
//定义元素的字体以及格式
var format:ElementFormat = new ElementFormat(new FontDescription("Arial"));
//可恶,还是没有单位,要是能像CSS中的定义为12px多优美啊
format.fontSize = 12;
var textEle:TextElement = new TextElement(txt, format);
//新建立一个文本块,并将文本元素变为其内容
var textBlock;TextBlock = new TextBlock();
textBlock.content = textEle;
/**
* 实际上textBlock.createTextLine有两个参数,第一个参数是上一行文本对象
* 第二个参数是输出文本行的宽度,我这里随便写了个50px
*/
var textLine:TextLine = textBlock.createTextLine(null, 50);
//设定文本行的位置
textLine.x = 10;
textLine.y = 10;
addChild(textLine);
//设定第二行文本,为何叫第二行文本,因为在createTextLine的时候指定了上一行是textLine
var textLine2;TextLine = textBlock.createTextLine(textLine, 100);
textLine2.x = 10;
textLine2.y = textLine.y + textLine.height + 10;
addChild(textLine2);


在你的Flash CS4的时间轴上写下上面的代码编译运行看看会有什么效果?别忘记选择一下文本看看效果!
  在上面的代码里,还能看到TextLine这个类,此类相当于是一个文本行,一个文本块可以输出多个文本行,而这些文本行的位置可以任你随心所欲的放置在舞台上的任何角落,而他们的顺序也是你来指定的,很爽吧!
  那么今天的分享先到这里。
  下次分享下强大的GraphicElement, 并且配合今天的分享的知识一起来实现一个更加牛逼的效果!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值