flash

知识博客专集

FLASH实用代码大全


轻松实现flash的全屏播放
  许多人都看过这样的效果:把光盘放入光驱后,光盘自动运行,接着便是一段flash制
作的开场动画,动画是全屏播放的,且右键点击无效,动画播放结束后,出现“关闭”按
钮,单击该按钮后,全屏动画关闭。
  其实上面提到的全屏播放以及取消右键菜单等效果都是靠fscommand指令在发挥作用。
fscommand指令主要是用来控制flash影片播放器的,但也可以用来打开其它的应用程序。
fscommand指令只有在flash影片播放器执行时才有效(.swf和.exe),在flash制作过程中,按“ctrl enter”预览动画,以及把动画发布成网页文件时,此指令无法发挥它的功能。
  fscommand指令使用的语法是:fscommand(\”command\”,\”arguments\”)
  command是指令的相关命令,arguments是命令的参数。
  下面我们就来讲讲如何通过fscommand指令来实现全屏播放、取消flash播放时的右键
菜单以及关闭flash动画。
  1、全屏播放flash
  “fullscreen”是全屏的意思,在默认的情况下,flash动画不是以全屏播放(false
),如果需要让动画以全屏状态播放,就必须把fullscreen命令设置为true,写为:
  fscommand (\”fullscreen\”,\”true\”);
  根据需要,我们可以把它写到帧、按钮、mc(movie clip)中。
  2、取消右键菜单
  showmenu命令是用来设置是(true)否(false)显示flash动画播放器的快捷菜单的
全部指令,即右击鼠标时弹出的菜单,默认为true,如果要取消弹出的菜单,必须在第一
帧这样设置:
  fscommand (\”showmenu\”,\”false\”);
  3、关闭动画
  quit命令是用来关闭播放器的.swf和.exe文件,该命令没有参数,写为:
  fscommand (\”quit\”);
  如果你想在flash动画结束时出现一个关闭动画的按钮,可以按下面的步骤做。
  执行“insert”下的“new symbol”(或按ctrl f8),在弹出的窗口中选button,然
后制作一个简单的按钮,回到场景中,选中最后一帧,从“library”中把刚刚建立的按钮
拖到场景中,因为该按钮在动画的最后才显示。
  给按钮写上如下代码,则实现按下按钮即关闭flash动画。
  on (release)
   {
    fscommand (\”quit\”);
  }

一、几种action命令
1.影片的播放与停止:
play( );//播放命令 stop( );//停止命令
2.改变流向命令
gotoandplay() //跳到指定的画面并连续播放。
gotoandstop() //跳到指定的画面并停止播放。
gotandplay(“场景名称”,)//跳到指定场景帧并连续播放。
gotoandstop(“场景名称:,frlme)//跳到指定场景帧并停止播放。
next( );//跳到下一帧播放;
prevprame( );//跳到上一帧播放。
3.控制影片剪辑的播放与停止:telltarget命令
如:telltarget(“c1”)
{gotoandstop(2);}//跳影片剪辑实例c1的第2帧并停止。
二、几种功能元件的制作方法
1.计时器的制作
单击菜单insert/new symbol,在弹出的对话框中输入插入的符号名称(如:计时器),确
定后选择文字工具,属性为动态(dynamic text),在第一帧中画两个文本框。分别设置变
量名为munite和timer,在两个文本框之间画一个形如冒号的圆点(这两个圆点可以做成一个
符号,类型为电影片段,每秒闪动一次.然后拖入到两文本框之间。在第二帧插入帧。在
第一帧输入动作脚本(action)如下:
//设置时间的初值
if(!started) {
start_time=gettimer();
started=true;
timer=0;
i=o;
munite=0;
}
x=gettimer()-start_time;//计算时间的变化
x=int(x/1000); //时间的单位为1000分之一秒
y=x-60*i
if (y>59)
{i=i 1;munite=munite 1
timer=timer 1:
}
else
{timer=y}
该符号制作完毕后。将其拖入主场景中即可。
2.智能判断速择题,并作正误提示
单击菜单insert/new symbo1,在弹出的对话框中输入插入的符名称。如:“对错提示”。
符号类型为“电影片段”。在第一帧输入文本“在括号内输入答案,按enrer键确定“ 在
该帧上输入动作脚本:
_root.flah=false;_root.ans=\” \”;gotoandstop(1);在第16帧插入空关键帧。在该帧上
画一个形如“x”的图或输入文本“x”,在第30帧插入关键帧,帧aaction为_root.ans=\”
 \”:gotoandstop(31);在第31帧插人空白关键帧,在该帧上输人静态文本“请重作,按e
nter键确定。“在该帧输入脚本:“stop();”至此,该符号制作主或:例如:
第1题:1十1十( )
a.2 b.3 c.4 d.0
在上例括号位置插入动态文本框,不输入任何内容。该文本框变量名为:ans。在该帧适当
位置插入电影“对错提示”,该电影片断名属性为“ql”,在该电影片断上输人脚本:

//键盘事件控制程序
onclipevent(keydown)
}
//取得按键的键值
keycode=key.getcode();
//判断是否为enter键
if(keycode==key.enter) {
//判断输入的答案是否正确
//answer=number(a)
if(_root,ans==\”a\” or _root.ans==\”a\”{
//显示“答对了”信息
telltsrget(_root.q1) {
gotoandplay(2);
}
} else {
//显示“答错了”信息
telltarget(_root.q1) {
gotoandplay(16)
}
}
}
}
3.声音的加载和控制
插入一段音乐:在pile/import to library中,找到要插入的音乐(如战马奔腾),打开符
号库,找到“战马奔腾”符号,单击右键,在弹出的菜单中单击linkage…命令,再在弹出
的菜单中选中export for actionsc选项,在indentify框内输入标识符:如music。
在需要播放的帧插入如下脚本:
soun=new sound();//创建声音实例
sound.attachsound(\”music\”);//将音乐music链接到sound实例
sound.start(0,2);//播放音乐2遍
sound.setvolume(70):该音乐的音量为70%。
以上加载音乐通过帧加载,也可以通过按钮加载。
停止音乐的方法:制作一个按钮,在按钮上输人脚本:
on(release)
{
sound.stop();
}
4.如何用键盘控制帧的跳转
有的教师喜欢用键盘进行操作,如何使这类操作方使自如呢?用flash mx制作的方法如下:

制作一个符号(如“知识回顾”),符号类型为“电影片段”。在这个符号中将需要回顾的
知识点逐帧展示,每帧动作脚本为:stop()回到主场景,在需要的帧插入该符号,该帧脚
本为:stop();插入后.单击该符号.输人脚本:
onclipevent(key down) {//键盘响应,按下任一键时响应该命令
next();
}
这样即实现了按任一键便可跳转到指定帧的效果。此例仅仅是一种基本方法,读者朋友在
应用时可以有更多的扩展。
5.鼠标指向显示填空题答案
显示一些问题的答案,可以将这一答案制成—个按钮,在这一按钮的up帧可以为空白关键
帧,其它帧为答案内容。在问题的答案处插入该按钮,在该帧输入脚本:
on(release) {
gotoandstop;//第i帧将答案固定显示在屏幕上

flash场景之间相互跳转的实现方法


在制作flash动画的时候,可能会有有很多的mc
有时会把它放到几个场景中,那么在场景中的跳转如何实现呢?
1.
方法一:(使用telltarg…
方法一:(使用telltarget命令)
按钮上的as为:
on (release) {
telltarget (\”/\”) {
gotoandplay (\”场景 1\”, 1);
}
}
2.
方法二(用gotoandpla…
方法二(用gotoandplay命令)
主场景2中的mc放到场景2的时间轴上
按钮的as: 
on release {
gotoandplay("场景1",1)
}
并且在最后一帧加stop()
问题就可以解决了:
3.
方法三(利用路径_root.g…
方法三(利用路径_root.gotoandplay())
第二个场景2里面只有一个mc,在这个mc的最后一帧是stop和一个replay按

按钮的as:_root.gotoandplay(1)
【即告知按钮回到场景1的第一帧】

4.
方法四(给场景起不同的名字) …
方法四(给场景起不同的名字)
如果你的as这样写:
第二个sence里面只有一个mc,在这个mc的最后一帧是stop和一个repl
ay按钮
按钮的as: 
on release {
gotoandplay("sence1",1)

结果按下后却是从这个mc的第一帧开始播放,而不是从sence1的第一帧
这是因为主场景的名字默认为sencen
mc里也可以有多个场景,而mc也是默认为sencen
所以当你在mc用上gotoandplay (\”scene1\”, 1);时,指的是所在场景中mc里的第一帧,而
不是主场景
解决的方法,就是给场景定义不同的名字
scene1我们改名为:主场景
scene2我们改名为:次场景1
正确的as应该为:
on (release) {
telltarget (_root) {
gotoandplay (1);
}
}
如果想实现按钮点击后从次场景播放就可以在按钮上写上:
on (release) {
telltarget (_root.次场景) {
gotoandplay (1);
}
}
5.
方法五(利用标签label) …
方法五(利用标签label)
我们在控制动画的时候一般也不是从开始播放,可能是希望从某个场景的某一个关键帧开
始播放,那么标签是
最好的实现方法;
例如我们希望点击上面的按钮的时候让动画从主场景中的label1开始播放,那么按钮上的
as应该为:
on (release) {
telltarget (_root) {
gotoandplay (\”label1\”);
}
例如有3个场景,我们希望点击上面的按钮的时候让动画从次场景1中的label4开始播放,
那么按钮上的as应该为:
on (release) {
telltarget (_root) {
gotoandplay (\”次场景 1\”, \”label4\”);
}
}
}
}
如果想实现按钮点击后从次场景播放
就可以在按钮上写上:
on (release) {
telltarget (_root.次场景) {
gotoandplay (1);
}
}

3,什么叫矢量图?
矢量图可以任意缩放而不影响flash的画质,位图图像一般只作为静态元素或背景图,fla
sh并不擅长处理位图图像的动作,应避免位图图像元素的动画。
4,如何迅速地对齐不同中的物件?
用 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 is loaded来实现,新建一层,这层专门放action,
第一帧,
ifloaded (\”场景\”, ) //假如场景中地祯数已经载入
goto and play() //跳至并播放某某祯(自己设定)
{}
第二帧,
goto and play(\”场景1\”, 1)//跳至并播放第一祯循环
再加上一个load地mc循环播放在这两帧的中间,就ok了。

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(音频数据流)模式就行了.
16,怎样可以做出很漂亮地字体特效?
用第三方软件swish和swfx这些,闪吧地软件资源有下载.
19,如何加载一个swf文件
添加一个空地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.问:如何用action将页面设为首页和加入收藏夹?
答: 一,用geturl的方法:
设为首页:
on (release)
geturl(\”;void links[0].sethomepage(\’http://www.flashempire.com/);\”, \”_se
lf\”, \”post\”);
{}
加入收藏夹:
on (release)
geturl(\” 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
sethomepage_dofscommand(command, args)
{}
这一段,修改成:
// handle all the the fscommand messages in a flash movie
sethomepage_dofscommand(command, args)
var sethomepageobj = internetexplorer ? sethomepage : sethomepage;
if (command == \”sethomepage\”) {
links[0].style.behavīor = \”url(#default#homepage)\”;
links[0].sethomepage(args);
{} else if (command == \”addfavorite\”)
args = args.split(\”|\”);
external.addfavorite(args[0], args[1]);
{}
}
最后,如果html里一个链接都没有,还需?lt; language=java>这句的前面添
加一句<a href=\”/\”></a>
22.问:怎么让动画放完后自动关闭?
答:在最后一桢的action里选fscommond一项,然后在右边选中quit,就可以了
24。问:如何在flash中打开一个定制的浏览器新窗口?
答:这个问题,很常见,也讨论过无数次,以前的一些有用的帖子找不到了,现在重新整理如下:
常用也是很简单的方法是用类似
get url (\”;\”)
这样的一句,但有很多问题,比如打开了新窗口后,原窗口的内容也被替代了。
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:< language=java>
<!–
var internetexplorer = navigator.appname.indexof(\”microsoft\”) != -1;
// handle all the the fscommand messages in a flash movie
movie1_dofscommand(command, args)
var movie1obj = internetexplorer ? movie1 : movie1;
//
// place your code here…
//
{}

改为:
code:< language=java>
<!–
var internetexplorer = navigator.appname.indexof(\”microsoft\”) != -1;
// handle all the the fscommand messages in a flash movie
movie1_dofscommand(command, args)
var movie1obj = internetexplorer ? movie1 : movie1;
// place your code here…
if (command == \”open_window\”)
{
arg_array=args.split(\”;\”);
open(arg_array[0],arg_array[1],arg_array[2]);
{}
}

ok!
如果是插入现有的html页,可以先发布,再copy相应的代码到html文件。
25。问:如何用action控制倒放?
答: 做一个mc放在合适的地方,里面有两帧
第一帧:
if (getproperty (\”/a\”,_current)<=1)
begin tell target (\”/a\”)
go to and stop (getproperty (\”/a\”,_totals))
end tell target
else
begin tell target (\”/a\”)
go to and stop (getproperty (\”/a\”,_current)-1)
end tell target
end if
第二帧:
go to and play (1)
这样就可以让/a倒放
但是还有一个问题无法解决:
如果我只想停一段呢?[/color]
比如说,我在第十个关键帧处加了一个stop,在第三十个关键帧处加了一个stop,现在想
倒到stop处停下来,却没有办法做到。
if (getproperty (\”/a\”,_current)<=1)
begin tell target (\”/a\”)
go to and stop (getproperty (\”/a\”,_totals))
end tell target
else
begin tell target (\”/a\”)
go to and stop (getproperty (\”/a\”,_current)-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”是位置具体的数值。

30.问:如何优化flash动画,使文件更小,播放更流畅?
答: flash作为macromedia公司出品的网页制作与动画创作的专业软件,操作简便,功能
强大,现已成为交互式矢量图形和web动画事实上的标准。
  但是,如果制作的flash电影文件较大,动辄几百k的话,常常会让网上浏览者在不断
等待中失去耐心。对flash电影进行优化就显得很有必要了,但前提是我们不能有损电影的
播放质量。
  1.多使用符号(symbol)。如果电影中的元素有使用一次以上者,则应考虑将其转换
为符号。重复使用符号并不会使电影文件明显增大,因为电影文件只需储存一次符号的图
形数据。
  2.尽量使用渐变动画。只要有可能,应尽量以“移动渐变”(create motion tween
)的方式产生动画效果,而少使用“逐帧渐变”(-by-)的方式产生动画。
关键帧使用得越多,电影文件就会越大。
  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.尽量避免在同一时间内安排多个对象同时产生动作。有动作的对象也不要与其它
静态对象安排在同一图层里。应该将有动作的对象安排在各自专属的图层内,以便加速fl
ash动画的处理过程。
  14.用load movie命令减轻电影开始下载时的负担。若有必要,可以考虑将电影划分
成多个子电影, 然后再通过主电影里的load movie、unload movie命令随时调用、卸载子
电影。
15.使用预先下载画面。如果有必要,可在电影一开始时加入预先下载画面(preloader)
,以便后续电影画面能够平滑播放。较大的音效文件尤其需要预先下载。
  16.电影的长宽尺寸越小越好。尺寸越小,电影文件就越小。可通过菜单命令modify
(修改)/movie(电影),调节电影的长宽尺寸。
  17.先制作小尺寸电影,然后再进行放大。为减小文件,可以考虑在flash里将电影的
尺寸设置小一些,然后导出迷你swf电影。接着将菜单file(文件)/publish settings…
(发布设置…)中html选项卡里的电影尺寸设置大一些,这样,在网页里就会呈现出尺寸
较大的电影,而画质丝毫无损、依然优美。
  在进行上述修改时,不要忘记随时测试电影的播放质量、下载情况和查看电影文件的
大小。

Skyfire爆出将Flash引入其iPhone应用


  今天,著名移动浏览器开发商skyfire爆出消息,称其将flash引入iphone,由于苹果之前的对第三方浏览器的限制条款,因此之用户flash的视频播放而已。昨天,这款应用已经提交到了app store,就像之前的android版本一样,它会在网页视频中被调用,并配有一个回放按钮从而实现播放控制。惊喜的是,skyfire还可以支持html5的视频播放,从而做到多种视频格式一个移动浏览器就可以轻松兼容。

skyfire爆出将flash引入其iphone应用

Flash暂无崩跌迹象 8月下旬急单涌入


记忆卡控制ic群联(8299-tw)董事长潘建成指出,nand flash价格短期走跌仍是趋势,上游业者在8月也谨慎控管销售状况,因此8月上旬市场动能虽一片寂静,但下旬nand flash已缓跌至部分业者能接受的合理区间,因此群联也在近两周接获急单。

潘健成强调,flash价格上下波动是正常循环趋势,明年制造端将持续扩充产能,以迎接接下来新一波电子产品对nand flash产品的需求,他强调,若上游业者因担忧价格问题而急忙抛售产品,才会对整体市况产生不好影响,但8月看来整体状况仍佳,市场秩序持稳,因此8月价格也没有崩盘现象,预期至年底状况仍可维持缓跌趋势。

不过潘健成认为,未来三至五年flash需求仍强,除了既有的产品需求外,新的电子产品例如ipad、智能型手机与ssd等产品陆续进入市场,flash的需求仍在,因此他不担心flash有过剩疑虑,但价格上下波动是正常循环,若外在经济因素没有太大改变,产业供需秩序可望持稳,价格的动荡也不会剧烈。

而此次群联也随柜买中心至海外举行法说座谈会,潘健成强调,长期来看flash需求可以期待,外国投资者多以长期投资为主,加上群联的营运模式特殊,全球除群联外仅有sandisk相同,因此也吸引不少日本投资法人目光。

如何在Flash里嵌入音频文件的两种方法


 本文介绍在flash文档中嵌入音频文件的两种方法,使其可以在flash player中正常播放。

  1、建立 sound 对象用 load() 方法加载外部的 mp3 来播放;

  2、让 sound 对象监听 sampledata 事件,这样可以播放由程序动态生成的声音,例如:

  下面的示例播放简单的正弦波。

以下是引用片段:
 

var mysound:sound = new sound();
function sinewavegenerator(event:sampledataevent):void {
    for ( var c:int=0; c<8192; c ) {
        event.data.writefloat(math.sin((number(c event.position)/math.pi/2))*0.25);
        event.data.writefloat(math.sin((number(c event.position)/math.pi/2))*0.25);
    }
}

mysound.addeventlistener(event.sample_data,sinewavegenerator);
mysound.play();

谷歌Android 2.2支持Flash十大猜想


  【it168评论】北京时间 8 月 18 日消息,据国外媒体报道,由于android 2.2操作系统的缘故,adobe公司的flash平台正在越来越多的android手机上大行其道。对于那些批评苹果不在其ios系统上支持flash的人来说,flash出现在android 2.2是一件好事。flash的支持者表示,flash可以显著改善用户在智能手机上的浏览体验。

  然而,并不是所有人都这么看。一些人认为,flash只会带来安全漏洞,弊大于利。虽然这些人知道目前大部分的视频和游戏都不支持iphone,但他们相信苹果会凭借其自身的影响力让html 5在几年内成为主流。对这部分人而言,flash只是鸡肋罢了。

  鉴于人们对flash的可行性有着各种各样的看法,所以可以肯定的是flash出现在手机市场上必然会导致几种结果,有可能是彻底的失败,也有可能会取得成功,迫使苹果重新开始重视flash。

  让我们来看一看谷歌若在其android 2.2平台上支持flash的话会出现什么结果:

  1. adobe获胜

  adobe的发展思路有可能一直都是正确的,而通过在android推出flash可以证明adobe是否已经为手机市场做好了准备。曾几何时,adobe宣称自己有实力在手机领域取得成功,只是苹果红口白舌的说adobe没准备好而已。如果flash真的好用,那么手机用户会喜欢上它的,安全问题也会得到很好的解决,而adobe将赢得在手机市场上的胜利,这会让苹果相当难堪。

  2. 爆发安全问题

  苹果一再表示,flash自身的一些问题会导致支持它的所有平台都出现安全问题。这也是苹果在其ios系统上放弃使用flash的主要原因之一。到目前为,flash尚未在移动市场上经受过任何考验。随着时间的推移,如果android系统由于flash的原因开始出现安全问题,那么这将证明苹果是对的,而adobe公司则将陷入麻烦。虽然adobe表示决不会导致任何安全问题,但只有时间才能证明一切。

  3. 用户不买账

  android 2.2如果加入flash的话,很可能并不会有什么反响。那些不喜欢iphone浏览体验的人可能会欢迎flash这一技术,但鉴于苹果iphone手机目前的受欢迎程度,flash的推出与否其实对大多数用户来说并不重要。有可能一些用户根本就不关心谷歌是否会在其新的操作系统上支持flash。他们有可能会在某处碰见flash,会在一些网站上去试用一下,然后该干什么干什么。如果情况真是这样,那么关于adobe的讨论就可有可无了。

  4. 用户希望flash出现在每一部手机上

  另外一种可能是,手机用户在浏览一些iphone无法访问的网站时,可能非常乐意看到flash出现在android平台上。他们有可能会再去购买一部装有android 2.2系统的手机,访问以往那些他们从未访问过的网站,并爱上手机版的chrome浏览器。毕竟,谷歌已经表态了,在flash的帮助下,android提供的浏览体验有可能是手机市场上最好的。或许,这一切有可能会成为现实。

  5. android大卖

  谷歌在自己的平台上推出flash并不是没有自己的想法的。这家公司意识到苹果的iphone手机在唤起用户购买欲上面相当成功,它也明白如果想让自己的手机操作系统继续快速增长,还需要集中精力使得android更有特色,而增添flash就是一个不错的选择。如果flash表现出色,用户又很喜欢,那这就很有可能会帮助谷歌卖出更多的android手机。如果用户认为android的浏览体验比ios更为优秀,那么谷歌还可能获得更多的利益。

  6. 苹果幸灾乐祸

  史蒂夫•乔布斯幸灾乐祸的方式是独一无二的,每年他都会在苹果公司的新产品发布会上做主题演讲,宣扬苹果公司的市场策略是如何如何的成功。如果flash失败了,并给谷歌的手机存储系统带来了无穷无尽的安全问题,那么这将给乔布斯以口实,乔布斯肯定会抓住机会时不时的对其竞争对手揶揄一番。

  7. 苹果会对谷歌的荒唐举措大做文章

  android正以令人吃惊的速度占领手机市场,但是flash可以将这一切付之一炬。如果用户开始发现flash并不像所宣传的那样有用,苹果毫无疑问会对此大做文章,并利用这一问题大发其财。如果这种情况真的发生,苹果的市场份额将会得到显著增长,而谷歌只会裹足不前。

  8. html 5取得主导地位(或失败)

  与谷歌支持flash类似的是,苹果看好html 5。鉴于flash在web上的流行程度,adobe在手机市场上完全有可能压制住html 5。但是,flash也有可能会失败,那时html 5将表现抢眼。html 5的命运将由flash在android 2.2上表现的好坏直接决定。

  9. 无人理会

  之前我们所讨论的这么多都基于一点,即在android 2.2推出flash会引起广大智能手机用户的关注。不过,完全可能出现另一种情况,即那些使用很少手机浏览器、一天只知道摆弄手机应用程序和电子邮件的普通用户完全不会注意到flash已经出现在了android 2.2上。毕竟,只有那些经常上网浏览的人才会需要flash。考虑到目前世界上很多热门的网站都没有包含flash,所以很有可能并没有多少人会去关注它。

  10. adobe会感到难受

  adobe的flash在android 2.2上有可能会成功,也有可能会失败。如果真的失败了,所带来的不良影响将是全方位的。比如说,苹果会对此大肆宣传,以帮助html 5取得成功。与此同时,谷歌和其他公司会同adobe保持距离,甚至会严重损害到该公司的核心利益。在android 2.2推出flash的变数太多,adobe、苹果和谷歌甚至每一家主要的手机厂商都清楚这一点。

YouTube:Flash时代为何还不结束?


【techdaily电子报8月16日综合报导】google(谷歌)大力鼓吹采用一系列网络技术来复制adobe flash的许多功能,但此时youtube并不准备换掉flash player。

正在积极更新中的html5标准,将支援可直接嵌入网页、毋需用flash player这类外挂程式播放的影片。其他开放的标准,例如cascading style sheets (css) 、scalable vector graphics (svg)和web open font format (woff),虽然能模仿flash的功能,但flash拥有对多重浏览器提供串流视讯的功能,是比其他技术占优势的一大原因。

youtube程式设计师john harding上月在部落格撰文说:“虽然html5的视频支援让我们能把大多数的youtube内容与功能引进电脑和其他并不支援flash player的装置,但html5尚未能满足我们所有的需求。今天,adobe flash提供最佳的youtube视讯传播平台,这也是我们主要的影片播放器都用它来建构的原因。”

html5影片仍属实验性

google从1月开始在youtube上呈现一些html5影片,但目前仍属实验性质。

adobe(奥多比)正努力巩固flash的地位,尽管近来flash备受其他网路技术的竞争威胁,又被苹果公司执行长steve jobs嗤之以鼻。adobe正大力推动把flash player引进行动装置,而google的android将是flash支援的第一个流动操作系统。 

但撇开政治问题与adobe和google密切的伙伴关系不谈,youtube这么支持flash、暂不采用html5视频或视讯,是否有技术上的理由?

浏览器制造商未有共识

john harding指出,最主要的理由是,浏览器制造商尚未达成共识,为html5敲定统一的视讯编码技术,或称codec。目前safari、chrome和ie9 platform preview都支持一种称为h.264的codec,而mozilla、opera和chrome正鼓吹支持google免权利金的新webm codec。

他说:“我们需要让所有的浏览器都支援一种标准的视讯规格。”

据了解,webm有机会成为那种规格。

领导制定包括html5、css、svg等多项w3c网络标准的philippe le hegaret上月接受访问时表示:“我们正为html5找寻一种免权利金的视讯规格,而webm 似乎是很好的候选者。但被问到webm既已获得mozilla与google的支持,可不可能成为统一的标准时,他说:“如果我们获得各方的同意,就可能;但现在浏览器业者不只是mozilla和google而已。”

播放是另一个问题。google已决定付费让自己的基础架构具备双重的codec支援能力。自从2007年以来,google便以h.264规格储存所有的影片,但自今年5月19日宣布webm的那天起,google也开始同步用webm来储存所有解析度在720p(含)以上的高画质影片。每分钟都有长达24小时影片上传至youtube,而且采用高画质的影片数量日增,这将是大手笔的投资。

除了考量影片规格相容性之外,john harding还列出youtube继续采用flash的其他理由:

◆  youtube需要复杂的控制功能,包括对缓冲(buffering)的控制以免影片播放时停顿,以及播放即时影片和随画质自动调整的功能。而html5视频在这些方便有所不足。 

◆  flash具有数位财产权管理(drm),这是显示“安全”视讯串流所必需的。具体来说,youtube的影片出租计画采用adobe的rtmpe (real-time messaging protocol, encrypted)协定。

◆  在youtube以外的网站上嵌入youtube影片,同时达到google保有字幕、广告等元素的要求,以目前的html5规格办不到。

◆  html5尚未支援全萤幕画面,在画面顶端显示播放和其他控制钮的能力也比不上flash。

◆  需要flash才能用webcam和麦克风从电脑录制影片,html5尚未支援这项功能。
 

Adobe:不再强求苹果解禁Flash


就苹果禁止iphone、ipod touch和ipad使用flash的问题,adobe和苹果两家公司曾在今年上半年展开过激烈的论战。不过几个月过去了,flash依然无法正式登陆ios平台,此事也正在逐渐被人们淡忘。adobe公司ceo shantanu narayen日前在接受英国媒体采访时就表示,苹果封杀flash的事件已成过去,他们已经不再强求苹果接纳flash。

shantanu narayen称:“他们已经做出了选择,那就是让他们的系统保持封闭状态。而我们也将与那些有兴趣和我们一起工作的伙伴们合作。”

“我们相信开放系统,相信互联网的力量,相信应当给用户选择的权利。我认为,当时出现的很多争议都缘于他们当时的决定。他们做出了他们的选择,我们也做出了我们的选择,并继续前行。”

“这是一项商业决策。基于我们企业所拥有的创新能力,我们还不如把精力放在那些希望通过flash获得最棒体验的人们身上,而这样的人还多得是呢。”

用PHP动态创建Flash的方法


利用ming php库来动态创建flash动画,老技术了,刚开始接触,看到一篇好文章,怕以后丢掉了,摘到这里留个备份,原文。

使用ming库有两种方式,我们可以内嵌到php里(对unix平台而言),也可以把它作为一个php模块来运行,里面的函数支持所有的平台,使用时也无需实例化。如果我们把ming库作为php模块来运行的话,我们必须明确地调用ming库,和使用其他模块一样,然后使用该库里的函数。由于使用前必须先加载模块,与把ming作为内部函数编译的方式相比,要有一点性能的下降。
ming库是完全免费的,我们可以到创作者的网站下载,地址是:http://www.opaque.net/ming/,该网站有详细的使用手册和帮助,在使用前,请先看看安装和配置说明,地址是:http://www.opaque.net/ming/install.html。另外,在php网站上也有使用手册和详细说明,地址是:http://www.php.net/ming。
一旦我们正确安装和配置了ming库,我们可以创建一个php对象,从php里调用ming的函数,通过调用函数和属性,就可以定义我们的动画了。在php模块里有13个对象,提供了flash的一些功能,也有几个命令可以来控制发行时的参数设定。下面就看看如何利用它来创建动画。
使用macromedia flash创建swf格式的动画,我们先创建一些符号,flash有三种类型的符号:图形、动画剪辑、按钮。一旦我们创建了这些符号,我们就可以把它们复制到场景里,每一个拷贝称为一个实例,可以放任意多的实例到我们的场景里。接下来就可以定义这些对象的行为了,也就是定义动作和运动轨迹,也可以定义动画的参数,如尺寸大小和背景颜色,如果需要,可以保存成.swf文件。
利用php的ming库创建flash动画,和macromedia flash一样,必须先创建一些符号,这些符号就是php对象的实例,然后定义这些对象在动画场景里的位置和相互关系,接着定义对象在每一帧里的动作,最后定义动画自己。我们可以直接把swf直接输出到浏览器,也可以保存成swf格式的文件,以备后用。flash的优点就是图形化的用户接口,利用ming库不但可以更加简单的控制对象,而且具有无限的扩展性和再用性。
下面我们就用一个完整的例子来看看如何使用ming库:

/* 首先创建一个符号,并填充颜色 */
&square = new swfshape();
&sqfill = &square->addfill(0, 0, 0xff);
&square->setrightfill(&sqfill);
&square->movepento(-250,-250);
&square->drawlineto(250,-250);
&square->drawlineto(250,250);
&square->drawlineto(-250,250);
&square->drawlineto(-250,-250);

/* 在动画剪辑里使用上面的符号,并添加一些脚本 */
&sqclip = new swfsprite();
&i = &sqclip->add(&square);
&i->setdepth(1);
&sqclip->setframes(25);
&sqclip->add(new swfaction(”stop();”));
&sqclip->nextframe();
&sqclip->add(new swfaction(”play();”));
for(&n=0; &n<24; &n ) {
&i->rotate(-15);
&sqclip->nextframe();
}

/* 下面创建按钮 */

function rect(&r, &g, &b) {
&s = new swfshape();
&s->setrightfill(&s->addfill(&r, &g, &b));
&s->drawline(500,0);
&s->drawline(0,500);
&s->drawline(-500,0);
&s->drawline(0,-500);
return &s;
}

&b = new swfbutton();
&b->addshape(rect(0xff, 0, 0), swfbutton_up | swfbutton_hit);
&b->addshape(rect(0, 0xff, 0), swfbutton_over);
&b->addshape(rect(0, 0, 0xff), swfbutton_down);
&b->addaction(new swfaction(”settarget(’/box’); gotoandplay(2);”), swfbutton_mousedown);

/* 下面创建动画,并添加上面的符号和按钮 */

&m = new swfmovie();
&m->setdimension(4000,3000);

&i = &m->add(&sqclip);
&i->setdepth(3);
&i->moveto(1650, 400);
&i->setname(”box”);

&i = &m->add(&b);
&i->setdepth(2);
&i->moveto(1400,900);

/* 最后,我们把它输出到浏览器 */

header(’content-type: application/x-shockwave-flash’);
&m->output();
?>

Adobe:未来版本Flash Player将支持3D技术


据国外媒体报道,adobe将为未来版本的flash添加3d图像支持,以避免在网络游戏开发者那里失宠。

支持3d是flash的一大进步,但显得稍微有些晚。flash受到许多web标准围攻,其中部分标准针对3d web图像。

adobe 在计划于10月份召开的max会议日程表中首次披露了flash支持3d的消息。此后,flash player产品经理英伯特·蒂波特(imbert thibault)发表博客文章称,“flash player将增添面向3d开发人员的技术。从事3d游戏、网站开发的开发人员绝对不应该错过这一技术。”尽管没有披露支持3d技术的flash player版本的发布时间,但蒂波特称,“未来版本的flash player将支持3d技术”。

adobe 2008年发布的flash player 10支持部分3d技术,但非常有限——例如能在3d空间处理2d对象,并非真正的3d环境。

adobe 在新发布的flash player 10.1开发方面投入大量时间,主要解决使flash player能够在硬件处理能力有限的智能手机上运行的问题。flash player 10.1界面并没有大的改变。为flash player增添3d界面对于开发人员而言将是一大变化。adobe可能将在flash player 11中支持3d技术。

3d web的前景并不光明。包括火狐、chrome和safari在内的各大浏览器支持名为webgl的3d技术。webg以opengl为基础。3d还不仅局限于webgl,谷歌在以webgl为基础开发代码库,提供高级3d web图形界面。尽管微软的ie 9支持许多新标准,但不包括webgl。微软ie部门总经理迪安·哈查莫维奇(dean hachamovitch)在接受采访时说,“我认为这是一种不同的标记”,这意味着webgl不符合微软的“相同的标记”计划,即web开发人员开发的代码应当支持任何浏览器。

flash通过提供一个接口回避了浏览器兼容性问题。但这种方法也存在弊端,例如,网页上的flash元素与其他元素“格格不入”。另外,flash还引发了稳定性和安全担忧,苹果首席执行官史蒂夫·乔布斯 (steve jobs)将这作为在iphone、ipad和ipod touch上封杀flash的一个原因。

网络游戏是flash的一个主要用途。但迄今为止,flash游戏主要是休闲游戏,许多游戏大作通常需要访问操作系统的接口,例如windows的 direct3d。尽管flash游戏短期内不能取代访问操作系统接口的游戏,但支持3d技术将极大地扩展flash在游戏市场的地盘。flash 3d技术支持硬件加速功能将非常重要,特别对于处理能力和电池续航时间有限的移动设备。

adobe 没有披露新版flash player发布时间,但该公司首席技术官凯文·林奇(kevin lynch)曾表示,flash player将支持谷歌的vp8视频压缩技术,并承诺将在谷歌发布vp8一年内发布新版flash player。谷歌今年5月份发布了vp8。

新版flash player的另外一项重要技术是支持64位计算技术。

adobe并未将宝全部押在flash上,它还越来越多地支持html和css。adobe在max会议上的另外一个议程是如何利用html5和css3开发web应用,max大会日程表称,“html5已经成为向互联网增添交互性和视频的一种强大工具。”

尔必达赴台设NAND Flash研发中心


据了解,日商尔必达已决定来台设立研发中心,且选定投入高阶技术nandflash领域。尔必达来台投资研发中心金额约在50、60亿新台币,未来将与力晶等日系半导体业者进一步合作。

据悉,尔必达与台湾创新存储器公司(timc)合作虽然破局,但尔必达与台湾业者联合抗韩的意图依旧存在,政府单位与尔必达互动密切,尔必达已于日前向经济部递出在台设立研发中心的初步计划书,经济部正进行审查中。

官员透露,尔必达来台设立研发中心的计划相当成熟,已进入实质合作内容洽谈中,研发中心切入的产品并非一般的动态存储器(dram),而是切入高阶的nandflash产品的研发。

nandflash技术领先dram一个世代,目前全球前五大制造厂被三星、东芝、美光、海力士、英特尔囊括全球96.8%市占率,台湾厂商在这一块缺席,原本在nandflash技术上相对薄弱的尔必达,在买下飞索(spansion)nand技术资产后,规划在明年投入nandflash量产。



Powered By wordpress Copyright flash © 2009-2012 版权所有