5.接下来回到主场景中,对主场景进行布置。首先在舞台上方绘制一个文本框,并设置其类型为输入文本,然后设置其变量名为inputtext,然后将前面制作好的按钮拖到其右边,最后分别将半圆和动态文本框拖到舞台中,并且使动态文本框位于半圆直径的最左边,分别设置半圆和动态文本框的实例名为arc和letter0,并将时间轴延长到第10帧,最后整个舞台如图6所示:
图6
6.因为环形文字是在点击按钮后生成的,所以需要将Action动作脚本加在按钮上,具体的脚本如下所示;
on (press) {
for (x=1; x<=100; x++) {
removeMovieClip("letter" + x);
}
}//当按下按钮时,清除上一次所生成的环形文字,为当前生成环形文字做准备,x的最大值取100,表示在输入文本框中最多可以输入100个字符
on (release) {
textLength = _root.inputText.length-1;//设置变量textLength的值为输入文本框所输入的文本各数减一
diameter = _root.arc._width;//取得半圆的直径
radius = _root.arc._height;//取得半圆的半径
_root.letter0.text = _root.inputText.substr (0,1);//取所输入的文本的第一个字符
//下面的循环将增加其余的字符,并将其排列成弧形
for (x=1; x<=textLength; x++) {//循环次数为输入文本框中的字符数
_root.letter0.duplicateMovieClip("letter"+x, x);//复制出一个动态文本框
with (_root["letter"+x]) {//对复制出的动态文本框进行如下的操作
_x += radius-(Math.cos ( Math.PI/textLength * x))*radius;
_rotation += x*(180/textLength);
_y += -(Math.sin ( Math.PI/textLength * x))*radius;
//分别设置复制出的动态文本框的坐标和旋转角度,使其位于半径的圆弧上
text = _root.inputText.substr (x,1);//最后设置此动态文本框中的文本为输入文本框中的下一个字符
}
}
}
最后发布影片,试一试吧,是不是可以随心所欲的制作出你想要的环形文本了,如果在你平时的动画制作中合理的使用这个小工具,可以在一定程度上提高你的工作效率,真正做到事半功倍。
|