学习此教程的全部源文件包,其中包含有textscript类
这里下载
f8_texteffect.rar
我想创建一个类用来管理和创建看起来费时又费力的字体效果制作过程,使用它可以允许我们轻松的创建自定义的效果,经过一系列的不同方式的试验,我最终完成了一个类,把它称之为TextScript.它预置了一些字体效果在里面,但最重要的是你可以使用这个类来创建你想象中的字体效果。如下面的效果。
TextScript类有两个基本方法(Constructive和Deconstructive)按在类方法中译为构建和拆分。Constructive方法用来创建一个moviclip holder用来承载你所附加的字体断段,并且要把它们以单个字符的形式显示出来。而deconstructive就更简单一些,因为它针对moveclip holder工作,并对constructive方法返回的结果应用我们想要的效果。
下面就让我们开始试一下。首先先下载the TextScript class并将它保存在你所设置的类路径下。如果你没有设置类路径,你可以在flash中按下ctrl+u.在左边选择择actionscript然后在下面选择as2.0设置。把你存放此类的路径添上即可。(译者:如果你不添路径也可以,只要保证你的fla文件在TextScript路径也可,只要文件能找到类即可,但这种方式对于日后的应用会麻烦一点。)
下一步,在flash8中创建一个新的fla文件,选择字体工具,在场景中拖动创建一个动态文本框.它不需要实例名称。我们要做的只是要嵌入字体,注意如果你没有嵌入字体,你的字体效果是不会显示出来的。
选择动态文本框,然后选择一种字体,不要选择非系统字体如_sans,_serif或_typewriter等字体。如我们的例子,使用的是Arial Black加粗字体。 如果你要使用加粗字体,在对文本框设置时一定要它显示出为粗体字样。然后点击右边的”embed”选择你要嵌入的字符范围,点击ok。
现在将下面的代码加入到你的时间线的第一帧上。
如下代码:
var myFormat:TextFormat = new TextFormat();
myFormat.font="Arial Black";
myFormat.bold = true;
myFormat.size = 22;
myFormat.color = 0x550000;
var phrase:String = "Dynamic Effects with TextScript";
var xLoc:Number = 50;
var yLoc:Number = 70;
var delay:Number = 3;
m = TextScript.blurIn(this, phrase, xLoc, yLoc, myFormat, delay);
在这段代码中,我们需要在开始的位置导入TextScript类,然后我设置我们想要显示的字体段落,并通过创建字体格式Textformat来格式化字体。最后我们设置constructive方法所需要的参数。
所有constructive方法都需要下面所列的参数。如下:
TextScript.constructiveMethod(scope,phrase,xLoc,yLoc,textFormat,delay);
Scrop:MovieClip – 你所要展示的文本所放的地方。也就是在哪个movieclip中。
Phrase:String – 你所要展示的文本内容。
xLoc:Number –展示文本所在movieclip中的_x位置
yLoc:Number --展示文本所在movieclip中的_x位置
textFormat:TextFormat –TextFormat对象,用于设定文本属性
delay:Number –出现在场景中字符之间的延时,以帧数为计数单位
Constructive方法总是返回包含你文本的movieclip的实例,你通常应将它保存在一个变量中(我把它命名为”m”)因为在后面你可以使用它来做为deconstructive方法的一个参数。
作为一个名称习惯,所有的deconstructive方法都以”remove”字样开头加上原有的constructive方法名称。因些如constructive方法名为”blurin”,那么它的deconstructive方法的名称就应用removeBlurin.但是它并不是一定要使用这种组合应用在deconstructive方法,任何的constructiv和deconstructive方法组合都可以创建出有效的效果来。
根据我们上面的例子,加入下面的代码:
TextScript.removeBlurIn(m, delay);
}
现在测试你的影片,你会看到你的字体模糊的出现,然后单击clear按钮,你会发现字体在消失。
演示文如下:
更深一步,如果你打开debugger面板,你就会发现TextScript deconstructive方法清除了所有在constructive方法中创建的元素。
内置在TextScript中的constructive方法如下:
typewriter 打字机效果
zoomIn 放大效果
zoomOut 缩小效果
blurIn 模糊效果
dropIn 下落效果
randomDropIn 随机下落
相应的deconstructive方法如下:
removeTypewriter 移除打字机效果
removeZoomIn 移除放大效果
removeZoomOut 移除缩小效果
removeBlurIn 移除模糊效果
removeDropIn 移除下落效果
removeRandomDropIn 移除随机下落效果
上面这些方法已经可以创建出足够好的效果,但在这个类中相对来说包含了很少的效果,实际上这个类可以创建出任何你想要的效果,你需要仔细查看这个类,这一节中我们将研究如何自定义字体效果。
[1] [2]
