初学flash守则
说明:该部分整体为一些基本的常见问题的收集,不一定做到完整,尽力为初学者解决必要的常见问题
1,FLASH是什么?
FLASH电影是专为网页服务的画像或动画(当然,也可用于其它用途)。主要含有矢量图形,但是也可以包含导入的位图和音效,还可以把浏览者输入的信息同交互性联系起来,从而产生交互效果,也可以生成非线性电影动画。该动画可以同其它的WEB程序产生交互作用。网页设计师可以利用FLASH来创建导航控制器、动态LOGOS、含有同步音效的长篇动画、甚至可以产生完整的、富于敏感性的网页。
2,怎样做一个简单地FLASH动画?
首先,打开你的FLASH软件,绘制一个圆形(左面地圆形工具可以直接绘制),然后按F8添加为一个Symbol,再图层第十祯地位置按F6键添加一个关键祯,并适当移动该Symbol的位置,最后在第一祯位置点鼠标右键选择Motion就行了.
3,什么叫矢量图?
矢量图可以任意缩放而不影响Flash的画质,位图图像一般只作为静态元素或背景图,Flash并不擅长处理位图图像的动作,应避免位图图像元素的动画。
4,如何迅速地对齐不同Frame中的物件?
用 Inspector “Ctrl+Alt+I” 直接输入坐标。
或是工具栏〉〉窗口〉〉面板〉〉排列“Ctrl+K” 调出排列面板来。图例
5,怎样调节一个Symbol/MC地透明度?
选中Symbol/MC,菜单栏找到Modify(修改) 〉〉 Instance (实例)〉〉Color effect (效果)〉〉 Alpha(透明度) 调整就可以了
6,做好地Flash放在html上面以后,它老是循环,怎么能够让它不进行循环?
最后一个祯地Action设置成Stop(停止)
7,怎样给我的FLASH做一个预加载地LOADING?
用Action语法地if frame is loaded来实现,新建一层,这层专门放Action,
第一帧,
ifFrameLoaded ("场景", frame) {//假如场景中地祯数已经载入
goto and play() //跳至并播放某某祯(自己设定)
}
第二帧,
goto and play("场景1", 1)//跳至并播放第一祯循环
再加上一个load地MC循环播放在这两帧的中间,就OK了。
什么?你要非常详细地LOADING?那就当这个源码吧,够详细了.
源码下载
8,怎样点击一个按钮打开一个页面html而不是一个祯.
制作一个按钮,上面地AS直接写:
on (release) {
getURL ("***.html");
}
这里地***.html就是你要打开地页面文件名,当然也可以是某某URL地址,比如说http://www.flash8.net
9,我在按钮地OVER祯放置了一个很大地MC,为什么我要没有点击到按钮鼠标就变成了手地状态?
按钮真正激活区是在HIT(按下)祯地位置,如果想控制按钮的位置为一定值,可以在HIT祯绘制一个透明地图形来判断.
10,如果屏蔽鼠标右键?FS命令都是什么意思?
fscommand ("fullscreen", "true/false");(全屏设置,TRUE开,FALSE关)
fscommand ("showmenu", "true/false");(右键菜单设置,TRUE显示,FALSE不显示)
fscommand ("allowscale", "true/false");(缩放设置,TRUE自由缩放,FALSE调整画面不影响影片本身的尺寸)
fscommand ("trapallkeys", "true/false");(快捷键设置,TRUE快捷键开,FALSE快捷键关)
fscommand ("exec");(EXE程序调用)
fscommand ("quit");(退出关闭窗口)
11,在FLASH中的字体总是很模糊,用变清晰地办法吗?
写好文本以后CTRL+T打开文本设置面板,在最后地文本框选项那里框选使用设计字体就行了.(注意最好使用宋体,尺寸为12或者8,这样比较工整)
12,我想做一个MTV,怎么导入声音呀?
很简单,CTRL+R导入你地声音文件就行了.
13,我制作地MTV声音和歌词总是不同步.
CTRL+F打开祯控制面板,右边找到声音选项卡,调整声音地同步效果为STREM(音频数据流)模式就行了.
14,为什么我做出来地MTV文件很大呀?
参看这篇贴子
15,FLASH地发布设置都有些什么?透明背景怎样设置?
图解图1图2图3
在Dreamewaver中地设置:
图解
(由FLASHWEB提供图材)
16,怎样可以做出很漂亮地字体特效?
用第三方软件Swish和Swfx这些,闪吧地软件资源有下载.
17,如何优化我地FLASH?
参看这篇贴子
18,我在ACTION面板地高级模式为什么字体总是很小?
19,如何加载一个SWF文件
loadMovieNum地技巧
添加一个空地MC。实体名为ok,ACTION:
loadMovie ("dr/test.swf", "_root.ok");
控制这个MC的位置,大小等相对属性(Property)就会影响调入SWF的位置和大小。
setProperty ("mc", _xscale, "****");
setProperty ("mc", _yscale, "****");
setProperty ("mc", _x, "****");
setProperty ("mc", _y, "****");
setProperty ("mc", _Alpha, "****"); ............
20,如何导入一个背景透明度效果比较好地位图?
推荐使用PNG格式(FIREWORK),FLASH对PNG位图地融合透明效果支持相当好。
21.问: 如何用actionscript将页面设为首页和加入收藏夹?
答: 一,用getURL的方法:
设为首页:
on (release) {
getURL("java script:void(document.links[0].style.behavior='url(#default#homepage)');void document.links[0].setHomePage('http://www.flashempire.com/');", "_self", "POST");
}
加入收藏夹:
on (release) {
getURL("java script:void window.external.AddFavorite('http://www.flash8.net','闪吧');", "_self", "POST");
}
二,用fscommand的方法,有点复杂
1,先在flash的按钮上添加代码:
首页:
on (release) {
fscommand("setHomePage", "http://www.flash8.net";);
}
收藏夹:
on (release) {
fscommand("addFavorite", "http://www.flash8.net|闪吧");
}
然后在发布设置中选择flash with fscommand,发布成html
2,修改html:
找到
// Handle all the the FSCommand messages in a Flash movie
function sethomepage_DoFSCommand(command, args) {
}
这一段,修改成:
// Handle all the the FSCommand messages in a Flash movie
function sethomepage_DoFSCommand(command, args) {
var sethomepageObj = InternetExplorer ? sethomepage : document.sethomepage;
if (command == "setHomePage") {
document.links[0].style.behavior = "url(#default#homepage)";
document.links[0].setHomePage(args);
} else if (command == "addFavorite") {
args = args.split("|");
window.external.AddFavorite(args[0], args[1]);
}
}
最后,如果html里一个链接都没有,还需在<SCRIPT LANGUAGE=javascript>这句的前面添加一句<a href="java script:"></a>
22.问: 怎么让动画放完后自动关闭?
答: 在最后一桢的ACTION里选FSCOMMOND一项,然后在右边选中QUIT,就可以了
23。问: 怎样引入透明的位图?
答: 最好输入png文件。png是fireworks文档。当然你也可以输入GIF89a格式的透明GIF图片。
24。问: 如何在Flash中打开一个定制的浏览器新窗口?
答: 这个问题,很常见,也讨论过无数次,以前的一些有用的帖子找不到了,现在重新整理如下:
常用也是很简单的方法是用类似
Get URL ("java script:window.open('new.htm','newwin','width=320,height=320');")
这样的一句,但有很多问题,比如打开了新窗口后,原窗口的内容也被替代了。
1、在Flash中需要执行打开新窗口动作的地方插入以下语句:
FS Command ("open_window", "filename.htm;newwin;toolbar=no,location=no,status=no,
menubar=no,scrollbars=no,resizable=no,width=320,height=200")
其中Arguments:
filename.htm 要打开的文件名
newwin 新窗口的名字
toolbar=no,location=no,status=no,
menubar=no,scrollbars=no,resizable=no,width=320,height=200 新窗口的有关属性,包括尺寸
注意以上三部分要用分号";"分隔
2、在File>Publish setting...中设定
HTML中的Tempalte : Flash with FSCommand
发布
3、编辑发布生成的html文件,找到以下一段:
code:--------------------------------------------------------------------------------<SCRIPT LANGUAGE=javascript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Handle all the the FSCommand messages in a Flash movie
function Movie1_DoFSCommand(command, args) {
var Movie1Obj = InternetExplorer ? Movie1 : document.Movie1;
//
// Place your code here...
//
}
...
--------------------------------------------------------------------------------
改为:
code:--------------------------------------------------------------------------------<SCRIPT LANGUAGE=javascript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Handle all the the FSCommand messages in a Flash movie
function Movie1_DoFSCommand(command, args) {
var Movie1Obj = InternetExplorer ? Movie1 : document.Movie1;
// Place your code here...
if (command == "open_window")
{
arg_array=args.split(";");
window.open(arg_array[0],arg_array[1],arg_array[2]);
}
}
...
--------------------------------------------------------------------------------
OK!
如果是插入现有的html页,可以先发布,再copy相应的代码到html文件。
25。问: 如何用action控制倒放?
答: 做一个mc放在合适的地方,里面有两帧
第一帧:
If (GetProperty ("/a",_currentframe)<=1)
Begin Tell Target ("/a")
Go to and Stop (GetProperty ("/a",_totalframes))
End Tell Target
Else
Begin Tell Target ("/a")
Go to and Stop (GetProperty ("/a",_currentframe)-1)
End Tell Target
End If
第二帧:
Go to and Play (1)
这样就可以让/a倒放
但是还有一个问题无法解决:
如果我只想停一段呢?[/color]
比如说,我在第十个关键帧处加了一个STOP,在第三十个关键帧处加了一个STOP,现在想倒到STOP处停下来,却没有办法做到。
If (GetProperty ("/a",_currentframe)<=1)
Begin Tell Target ("/a")
Go to and Stop (GetProperty ("/a",_totalframes))
End Tell Target
Else
Begin Tell Target ("/a")
Go to and Stop (GetProperty ("/a",_currentframe)-1)
End Tell Target
End If
第二帧:
Go to and Play (1)
这一段肯定放在一个mc 里,
假设这个mc为/b
在/a需要停止的帧理设置
Begin Tell Target ("/b")
stop
End Tell Target
stop
就可以了
26。问: 内部声音角色与外部声音角色有何差异?
答: 没什么太大的区别
外部文件如果导如的话可以降低文件的大小
在发布的时候或者做成光盘的时候需要和DCR文件一起走,并且始终保持相对路径不变
还有一个流式播放的问题
如果导入的声音文件过大就会影响同步效果,声音滞后。(因为Director在播放内部声音之前就将其预栽到RAM中)外部声音文件是流式的,一边播放,一边下载。但要注意连接路径问题。
27。问: 如何使声音无限循环?
答: 将声音的循环次数定义成足够大,如果你的音乐设为STREM(音频数据流)那你的swf文件也会足够大。
28。问: 如何控制声音的播放及停止
答: 在library 里右健点击声音文件,选linkage…
设置Export This Symbol
entifier:
取名为"sound"
然后就可以在stage里面设置了
s = new Sound();
s.attachSound("sound");
要让声音sound关掉只须
执行:
s.stop();
要让他开始播放就是
s.start();
29.问: 如何调入SWF文件及控制它的大小和位置?
答: 一、如何调入一个SWF文件:
调入一个SWF置给一个层loadMovieNum ("path/movieFile.swf", 0);
其“path/movieFile.swf”为要调入文件的地址,“0”为层号,“0”为第0层;
调入一个SWF置给一个MC
loadMovie ("path/movieFile.swf", "MC_Name");其“path/movieFile.swf”为要调入文件的地址,“MC_Name”是MC的名字。
二、如何改变调入后的SWF大小:
setProperty ("MC_Name", _xscale, size_x);
setProperty ("MC_Name", _yscale, size_y);
“MC_Name”顾名思义是那个MC的名字了,“_xscale”和“_yscale”是指这个MC的X与Y点的位置,这个位置是用来控制MC大小的。其“size_x”和“size_y”为设定这个MC具体大小的数值。
三、如何改变其位置:
一个简单的方法是,我们可以来移动那个已给置入MOVIE文件的MC,就像我们用来改变一张图的位置那样用鼠标拖动它。
另一个方法是利用setProperty来进行改变这个MC的位置。
setProperty ("MC_Name", _x, "position_x");
setProperty ("MC_Name", _y, "position_y");
“MC_Name”是MC的名字,“_x”和“_y”指的是X坐标和Y坐标点,而“position_x”与“position_y”是位置具体的数值。
希望各位能明白我这个简单的教程!以上代码均为FLASH5为标准。
作者: 雨花石
30.问: 如何优化Flash动画,使文件更小,播放更流畅?
答: Flash作为Macromedia公司出品的网页制作与动画创作的专业软件,操作简便,功能强大,现已成为交互式矢量图形和Web动画事实上的标准。
但是,如果制作的Flash电影文件较大,动辄几百k的话,常常会让网上浏览者在不断等待中失去耐心。对Flash电影进行优化就显得很有必要了,但前提是我们不能有损电影的播放质量。
1.多使用符号(Symbol)。如果电影中的元素有使用一次以上者,则应考虑将其转换为符号。重复使用符号并不会使电影文件明显增大,因为电影文件只需储存一次符号的图形数据。
2.尽量使用渐变动画。只要有可能,应尽量以“移动渐变”(Create Motion Tween)的方式产生动画效果,而少使用“逐帧渐变”(Frame-By-Frame)的方式产生动画。关键帧使用得越多,电影文件就会越大。
3.多采用实线,少用虚线。限制特殊线条类型如短划线、虚线、波浪线等的数量。由于实线的线条构图最简单,因此使用实线将使文件更小。
4.多用矢量图形,少用位图图像。矢量图可以任意缩放而不影响Flash的画质,位图图像一般只作为静态元素或背景图,Flash并不擅长处理位图图像的动作,应避免位图图像元素的动画。
5.多用构图简单的矢量图形。矢量图形越复杂,CPU运算起来就越费力。可使用菜单命令Modify (修改)/Curves(曲线)/Optimize(优化),将矢量图形中不必要的线条删除,从而减小文件。
6.导入的位图图像文件尽可能小一点,并以JPEG方式压缩。
7.音效文件最好以MP3方式压缩。MP3是使声音最小化的格式,应尽量使用。
8.限制字体和字体样式的数量。尽量不要使用太多不同的字体,使用的字体越多,电影文件就越大。尽可能使用Flash内定的字体。
9.不要包含所有字体外形。如果包含文本域,则应考虑在Text Field Properties(文本域属性)对话框中选中Include Only Specified Font Outlines(只包括指定字体外形),而不要选择Include All Font Outlines (包括所有字体外形)。
10.尽量不要将字体打散(菜单命令为Modify / Break Apart)。字体打散后就变成图形了,这样会使文件增大。
11.尽量少使用过渡填充颜色。使用过渡填充颜色填充一个区域比使用纯色填充区域要多占50字节左右。
12.尽量缩小动作区域。限制每个关键帧中发生变化的区域,一般应使动作发生在尽可能小的区域内。
13.尽量避免在同一时间内安排多个对象同时产生动作。有动作的对象也不要与其它静态对象安排在同一图层里。应该将有动作的对象安排在各自专属的图层内,以便加速Flash动画的处理过程。
14.用Load Movie命令减轻电影开始下载时的负担。若有必要,可以考虑将电影划分成多个子电影, 然后再通过主电影里的Load Movie、Unload Movie命令随时调用、卸载子电影。
15.使用预先下载画面。如果有必要,可在电影一开始时加入预先下载画面(Preloader),以便后续电影画面能够平滑播放。较大的音效文件尤其需要预先下载。
16.电影的长宽尺寸越小越好。尺寸越小,电影文件就越小。可通过菜单命令Modify(修改)/Movie(电影),调节电影的长宽尺寸。
17.先制作小尺寸电影,然后再进行放大。为减小文件,可以考虑在Flash里将电影的尺寸设置小一些,然后导出迷你SWF电影。接着将菜单File(文件)/Publish Settings…(发布设置…)中HTML选项卡里的电影尺寸设置大一些,这样,在网页里就会呈现出尺寸较大的电影,而画质丝毫无损、依然优美。
在进行上述修改时,不要忘记随时测试电影的播放质量、下载情况和查看电影文件的大小。
[转载]
31.问:为什么在用flash做“沿轨迹运动”时总是沿直线运动,和教程对照了一下,做法完全一样,怎么不行?
答:这个问题似乎总会困扰初学者,但实际上问题很简单。首尾2帧中心位置没有放准在轨迹上。一个简单的检查办法:你把屏幕大小设定为4 00%或更大,察看图形中间出现的圆圈是否对准了运动轨迹。
32。问:为什么我在 FLASH 中做旋转为什么总是转不快。有什么办法可以转快一点呢?
答:你把播放速度调快,比如38祯/秒,方法:主菜单->modify(修改)->movies(影片),加大Frame rate(影格速度)的值便可
33。问:请问制作按钮时,“hit"是用来做什么的?什么时候需要用到?[/color]很多教程都没具体讲解"hit"的用法。[/color]
答:hit是指定按纽的激发区域。在HIT内设定的区域在播放时是不会显示出来的。如果没有指定HIT区域,一般FLASH会默认你的按纽区域作为激发区域。比如:用文字做按钮时,最好能定义一个矩形来做触发区,而不是系统默认的文字内容。
34。问:如何把flash放到FP2000、FP98中去?
答:FP98和FP2000对FLASH的支持较差,不能直接在其中插入FLASH动画,解决办法是在SWF文件发布、原代码生成后,把HTML文件中的< ; ;OBJECT>部分拷过去便可。建议使用DREAMWEAVE来制做FLASH动画网页,会方便很多。
35。问:如何把一个fla文件输出成和swf一样的gif文件
答:先在Publish settings(发布设置)->format(格式)->Gif image(gif 影像),并对其进行相应的设置之后,用Publish(发布)功能便可输出GIF文件。如果FLA文件中含有MC,那么GIF文件中将不会包含MC中的动画,而将只将M C的第一桢转化为GIF。
36。问:把做好的一个只有十几K的FLASH放入网页中后,预览网页时,为什么要等好长时间FLASH才能被显示。
答:检查SWF文件的名字.路径是否正确,如果不正确系统会试图长时间等待。
37。问:如何设置FLASH的背景?
答:设定背景颜色可以按Ctrl+M,选color项里的BACKGROUND(背景),如果想用一幅图形做背景只需在最下的一个层import(输入)一幅图像便可。
38。问:在FLASH中,怎样画一个圆圈,如何修改圆圈的颜色?
答:画圆的时候把填充色(颜色设定的左上角选项)设为无就可以了!把边框的颜色设定为相应颜色便可。
39。问:怎样做到字列成环型并围绕圆心转动?
答:你可以用CORELDRAW软件或者相关软件来做好了,再导入到FLASH中便可!