庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>媒体动画>Flash>动画特效制作>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

用flash制作运动出现的文字

 作者:本站收集   日期:2005-6-21
字号选择〖 〗/ 双击滚屏 单击停止   
先看看效果:

点这里下载演示效果文件

这是一个类似于打字效果,却又与之有所区别的动画效果(广泛应用于网站制作中的字幕效果,有时候banner中也会用到)。下面我们将一步步的学习其制作方法。
你能学到的内容包括:动态文本,输入文本的应用;关于字符串的一些函数;复制影片剪辑;删除复制出来的子影片剪辑;读取和修改影片剪辑的某些属性;利用if判断语句对FLASH进行流程控制等等。

步骤1:

先看一看整体的图层布局(如图一):共四层:从上到下:第一层是button层,放的是一个开始按钮;第二层是AS层:没有其他元件,是专门用来添加AS代码的图层;第三层是text层,放的是一个输入文本框;第四层是MC层,放的是一个实现文本动态出现的MC(下面会具体介绍其做法)。


按此在新窗口浏览图片

步骤2:

准备各种需要的元件:

a)首先做简单的,制作一个开始按钮(你可以精心制作,搞的漂亮一点),放在单独的图层中,图层名为button;
b)制作一个输入文本框,其变量名为:text。定义变量名的方法   如图二   所示。也把他放在一个单独的text图层中;

按此在新窗口浏览图片

c)制作最重要的一个元件,也就是产生动态效果的MC:新建一个MC元件,命名为wenben,进入其编辑状态,在编辑区做一个动态文本框,变量名为:tt(给动态文本添加变量名的方法与图二类似)。大概够容纳一个字母的大小,然后右键选中这个动态文本框,将他也转化为MC元件,名称为:wb   ,实例名为:b。(给MC定义实例名的方法参看图四)接着添加一个新的图层(图层属性为引导层),画一条直线,然后让wb这个元件沿这个直线做位移渐变,中途再适当添加关键帧,让他的大小,角度作些变化。完成后的wenben   这个MC的各个关键帧的情形参看图三(系列)。说明一点:在第八和第十六帧之间,wb做的是旋转两周的运动。

按此在新窗口浏览图片

按此在新窗口浏览图片

按此在新窗口浏览图片

按此在新窗口浏览图片


d)回到主场景新建一个图层,名为MC。把wenben   放入其中适当位置(具体参看后面提供的源文件),添加实例名为a(方法参看图四)

按此在新窗口浏览图片

e)将上述所有图层延长到20帧;

至此,所有相关元件准备完毕。


步骤3:
开始着手最关键的部分,添加AS代码:

新建一个新的图层,图层名为AS,共20帧:

第一帧:
text="happy   new   year!"//初始化输入文本框的内容,这一内容可以在SWF文件中修改;
stop();


第二帧:
ll   =   length(text);//获取输入文本的字符串的长度(其具体用法参看后面给出的相关语句的用法解释)
i   =   1;//初始化用于变量i的值;

第三帧:
duplicateMovieClip("a",   "a"   +i,   i);//复制实例名为a的影片剪辑;
setProperty("a"   +   i,   _x,   getProperty   (   "a"   +i,   _x   )   +(i*10));//设定每个子影片剪辑的X坐标值,实际上也就是设定每个字母之间的间隔。
set("a"   +   i   +   "/b:tt",   substring(text,   i,   1));//指定每个子影片剪辑中的b元件内tt这个动态文本的内容为text这个输入文本中的第i个字符(关于这个函数的具体用法,参看后面给出的相关语句的用法解释)。
i++;//变量i自加;

第十帧:
if   (i   ==ll+1)   {
   gotoAndPlay(20);//如果text内的内容全部显示过了,跳到20帧;
}   else   {
   gotoAndPlay(3);//如果还没有全部显示过,则跳回第3帧继续显示;
}


或者第十帧的代码可以改为:
if   (i   ==ll+1)   {
   stop();//如果text内的内容全部显示过了则直接停止动画,不需要再跳转;
}   else   {
   gotoAndPlay(3);//如果还没有全部显示过,则跳回第3帧继续显示;
}


第二十帧:

stop();//整个动画停止;


开始按钮:

on(press){
   for(i=1;i<=ll+1;i++){
   removeMovieClip("a"+i);//在开始播放新的字符串的出现前,先清除前一次的字符串;
   }
   gotoAndPlay(2);//开始播放第二帧
}

这样就差不多全部结束了,ctrl+enter测试!





再给出相关语句的具体用法解释(整理自AS字典):1.
substring(string,   index,   count)   
参数:
string:字符串值,表示要抽取的字符串值。   
index:数字值,表示要抽取字符串的开始位置。   
count:数字值,表示要截取字符串的长度。(可选)   
返回:   一个字符串值   
介绍:   使用   substring   语句,可以获取指定字符串对象中从指定的位置开始截取指定长度的字符串信息。参数(string)指定要抽取的字符串值。参数(index)指定开始截取字符的位置,设置为   0   表示从字符串的第一个字符开始,如果设定该值为负数,则表示起始位置从字符串的尾部计起。参数(count)指定截取字符串的长度,如果省略该参数,则表示截取自开始位置起后面的所有字符信息。返回的字符串值,表示抽取到的字符串信息。   

说明:此函数自FLASH   MX起,已经不建议被使用,其功能可以被一个新函数mystring.substr代替,具体参看我整理的这个文章中的第10点:

http://www.flash8.net/dispbbs.asp?boardID=1&ID=145656

2.length(expression)   
参数:
expression:字符串值,表示要获取长度的字符串值。   
返回:   一个数字值   
介绍:   使用   length   语句,可以获取指定字符串的长度信息。参数(expression)指定要获取长度的字符串值。返回的数字值,表示获取的字符串长度结果。 

点这里下载源文件
上一篇:用flash制作模仿字雨效果    下一篇:flash打字效果中的颜色控制  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-6-21
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿