首页 | 新闻 | 短信 | 邮件 | 商城 | 搜索 | 社区 | 在线 | 企业
搜狐首页 >> IT频道首页 >> 网狐教程 >> 多媒体制作
多媒体制作常见问答集
2002-05-19 10:03  作者: 54ZQ 机器猫 天地  转自: 5D精英网
一、Director篇

问:Director中如何对Access数据库进行读、写和字段匹配?

答:通过DBGrid控件可以实现这一功能。

问:在director  8.0中,如何在播放头离开后,停止播放SWF的声音?

答:7.02以后,Director对支持Flash的插件进行了更新,使得Flash的视觉效果大大改观,比Flash直接打包成的exe还要好很多,尤其是在有颜色渐变时。但是也带来了一个问题,就是声音会独占资源。解决的方法是在start movie里加上如下语句:

on prepareMovie

   the soundKeepDevice = 0

end

问:如何把*.wrl文件运用在Director中?

答:用IE控件,连接文件就可以。

问:如何在Director 7.0以上版本实现某一movie内写好的脚本切换至另一movie时继续有效?

答:第一点你要保证你在另外的Movie里用的变量在主Movie里都已经定义为全局变量,再就是你可以在主Movie里用TELL 命令告诉另一Movie要做什么事情,这就需要具体情况具体对待了。

问:GIF 文件导入Director8,用backgroup transparence 的墨水效果,但当显示屏颜色调到256色时,所有白色以及浅色的地方都变透明了,什么原因?如何解决?

答:因为颜色数减少以后,白色和浅色被视作为一种颜色,最好的解决方法是,用代有Alpha通道的图片透明选项,选用Alpha透明这样就非常的干净了。

问:在1024*768下做的dir文件,大小为800*600,播放时上面和左边均有一条白边,在800*600满屏下播放也去不掉,生成后依然存在,怎么解决?

答: 主要是没有居中,在打包成为exe的时候, 在project的对话框里面选择 option按钮然后选择Center window就可以。

问:在Director 8中如何插入用JAVA(APPLET)编写的程序,可否利用ACTIVEX——IE?

答:在Director 8中插入JavaApplet,我是用IE的浏览器ActiveX来显示带了Applet的homepage但注意在ActiveX中的任何事件都全被ActiveX自己吸收。至于要用Director 8输出java源码再修改,应该可以,但小程序继承于Applet类,你要用反编译软体将显示图形的JavaApplet译成源代码并加以修改。

问:使用WEBXTRA可以插入,在WIN2K下运行可以,在WIN98下速度很差。在使用ActiveX时会不会存在发布的兼容性问题?如IE5和IE4。使用ActiveX时如果IE禁止APPLET还会显示吗

答: 如果你只是插入applet,那就没有问题了。ie4、5的差异我个人认为是VB与JAVA脚本程式上。如果在设置中禁止applet,那么applet将不会显示。在win98下确实很慢,所以要配背景音乐,不要放在d8中播放。用html中的bgsound语句调用mid会好很多。

问:Director7.0以上版本从一个movie切换至另外一个时,原movie的.WAV背景音乐不能连续,(6.5可以),用Directmedia播.mid也一样,如何解决?

答:这是文本的原因,因为Director 6.5默认的存储文本的方式就是按照位图(1 Bit),可是director 8.0默认的不是,而Director对于文本的处理需要预调一大段时间。动手写一个将电影中的所有文本全转成图片的程序,问题就可以解决了。其实这主要应为在dir中使用了大量的文本,不知道你的是否也属于这种情况。

问:flash 和director怎样传递变量?

答:在安装目录中show me目录下有一个flash与lingo交互的例子,它用了三个不同的方法,大家可以看一下。在flash中设置变量,并赋值,在director中用

getVariable(sprite flashSpriteNum, "variableName" ;)

函数获得此变量的值。

如:在flash中设变量为v=5

     在director中假设一个临时变量tempv,

     假设此flash演员在2号通道,则

     tempv=getVariable(sprite 2, "v" ;)

就可以得到v的值了

问:在Director 8.0的 Paint画椭圆和线时,会有黑色阴影出现,画矩形则没问题,是什么原因?

答:显卡驱动程序已经旧了,与win98不能很好的工作,换个比较新的显卡。

问:几个Cast,分别为obj、obj1、obj2、obj3,如何用lingo给sprite 1指定随机轮流出现这4个Cast。用set the member of sprite 1 to member "obj" of castLib "internal"只能出现一个,是否要用random?

答:首先要把这几个members摆放在cast window里连续的位置上,就可以用random function. sprite(me.spriteNum).member=member(random(4))

问:在Director 8.0中的字段中不能输入中文,一输入就死机应该怎么办?

答:这是一个Director 8.0的bug,在director 8.5就已经解决了

问:如何才能在Director 8.0里加入PowerPoint2000的文件?

答:可以用 PowerPoint2000 的 ppt 文件打包为播放器的可执行文件,然后用  Director 的 open 命令打开这个 exe 文件。这样你必须安装打包模块。在“文件”菜单中的 “打包”命令,按照步骤可以生成播放机可执行文件*.pps、ppt文件播放依赖于powerpoint环境。Office2000光盘的"x:\PFILES\MSOFFICE\OFFICE\XLATORS"有ppt.pps的播放器(Ppview32.exe),建议把这个包含播放器的文件夹“XLATORS”拷贝到你的projector路径下,在Director内部用"open *.pps" with the moviepath&"xlators\Ppview32.exe"调用即可。这样即使用户机器上没有安装Office,你的pps(ppt)文件仍可以正常播放。同时你也可以通过使用PPViewer Xtras 来实现。

问:播放一段avi,能否让Director自动设置必须的长度?

答:用设置sprite帧数去匹配avi(声音也一样)时间是不保险的做法。因为director的播放速率最终还受客户机器速度的影响。若客户机速度较慢,将不能达到正常的播放速率。而avi等视频文件会采用丢帧的方式维持时间长度。解决方法是,avi只须设置一两帧,在最后一帧的tempo里设置wait for cue point为avi通道的end。

问:在Director的sprite 1中插入一个MPG文件,我只想让它占用一帧的空间,然后使用lingo来判断它是否正在播放,用什么命令来判断?

答:你用Director Media Xtra插入mpg就可以用lingo很好地进行控制。

问:想做一个小球由左往右运动,如何用Lingo改变运动的速度?

答:puppetTempo x

问:如何让一个物体在一定的时间内,渐渐的变暗?

答:on beginSprite me

pSprite=sprite(me.spriteNum)

pSprite.blend=0

end

on exitFrame me

if pSprite.blend < 100 then

pSprite.blend=pSprite.blend + 5

end if

end

问:Director电影如何随机播放外部声音文件?

答:用随机函数 random(n)生成一个数,

再用 sound playFile 调用一个外部声音。

例如:

set rannum=random(10) --有10个外部声音

set soundfilename= "sound" & string(rannum) --生成外部声音文件名,如:sound1,sound2...sound10

sound playFile 1,soundfilename

问:在Director中,如何将从文本库中搜索的文本,一行行地显示在一个field中?

答: member("text").line[ i].text=gtext

问:在Director中如何做屏保?

答:下载一个Cinemac For Macromedia Director 1.5u

问:如何实现对stage尺寸的缩放?

答: (the stage).drawRect =

(the stage).rect =

问:Director 8中如何使用alpha通道?

答:Photoshop中输出tif带通道的图(将所需图象处选取,在select菜单下选取存储新通道就可以。Director 8中使用alpha通道,绝对可以避免毛边问题! 要注意只能含有一个alpha通道,在输出时不要选中exclude alpha channal and exclude non-image data,不能选lzw压缩,Dr导入是32bit。

问:怎样才能在Director 7.0 中控制 QuickTime VR ?

控制QTVR全景最好的方法就是swing(sprite whichQTVRSprite, pan, tilt, filedOfView, speedtoSwing)

问:如何在Director 7.0 中使用 Access 或 SQL Server 数据库呢?

答:director 连数据库有一些插件,如Fileflex和V12-DBE,有用ActiveX连的,但速度很慢。

问:如何在Movie中实现邮件递交功能?

答:在 macromedia 站点的 

www.macromedia.com/support/director/ 中查找有关 multiuser 的 xtra 的 一篇 article 就详细描述了如何用 multiuser xtra 发送 email ,其实如果你仔细看过有关 multiuser xtra 的帮助文件里面捎带提到了一句,很容易被忽略掉。 但是你不要指望复杂的带附件的 email 发送,而且也只是实现了 smtp 协议,而没有 pop 协议的实现,但是对于发送文本已经够了。好在是免费的。

问:出现director player errorthis application requres an xtral(text) that eighter does not exist or failed to intialize prorerly please make sure the appropriate xtras are in the xtras folders(s)该如何处理?

答:是xtra的问题,在projector的同级目录下建一个xtras文件夹,把用到的xtra都放进去就没事了。或者打开每一个dir文件,看modify\movie\xtras,里边列出缺省打包的xtra,都抄下来,然后打开你想单独打包的dir,打开modify\movie\xtras,把缺少的xtra添加进去。

问:在movie播放后检测如果鼠标没有点屏幕一段时间,让Director返回到frame 1?

答:on startmovie me

the timeoutlength=yourtimelength--for example:60*60*3(三分钟)

the timeoutMouse =true

end

在需要等待的地方放上以下程序:

on timeout

go to 1

end

另外,可参看可设置是否可触发时间的从新算的另一属性timekeydown,timeoutplay及上一次操作到当前时间所经过的时间值timeoutlapsed。希望对你有帮助咯。

问:在Flash中做的按钮,在DirectorDIRECTOR8中使用,鼠标老是箭头状,请问如何与在FLASH里一样,变成手指状?

答:用mouseOverButton属性。

if sprite( flashSprite).mouseOverButton then

    sprite( flashSprite).cursor = 280

  else

    sprite( flashSprite).cursor = -1

end if

问:如何在miaw01开另一个miaw02,且在不同的播放环境中保持miaw01与miaw02空间关系相对固定?

答:1.director 8.0可以在MOVIE属性中直接设定每个DIR离屏幕左上的值

2.用Rect,用算法来得到

3.用系统属性the DeskTopRectList获得监视器分辨率,根据监视器分辨率不同确定miaw02的位置来达到目的。

问:请问在创建exe文件时,系统报错“this file is locked."是怎么回事?

答:很有可能是局域网的其它用户打开了这个文件。

问:用Open  Windows打开新窗口,但是原来主窗口的声音继续播放,关掉新窗口,但新窗口里的影片声音也在继续,该怎么处理?

答:可以在Open Window语句之前加上sound stop 1或sound stop 2一类的语句,让声音停止。

在新窗口里写一个公用函数,里面也加声音停止的语句。

在关掉新窗口时调用这个函数,声音就停止了。

问:“#” 操作符号的功能是什么?

答:可以说“#” 在Director中的作用是非常大的,主要有以下作用:

  1:在behavior中得到Property的值是

  2:在SendSprite时(SendAllSprite)

    3:可以用#????来代替一个不容易理解的值,更加方便自己明白自己的程序。

 比如,#AviChannel总是比37这个数字容易记得住。

问:在Director中插入.mov后很大,有无办法将执行文件变的小点?

答:对于WAV,你可以压缩成SWA,如果牺牲一点品质就可以控制在1M以下。

对于MOV,也可以压缩,如果还不行,那就没法子了。另外MOV的动画可以用director 来做或是用flash做,这样体积会减少不少。

问:Director 8中只要点击一个按钮就可将当前图案设为墙纸,应该如何作?

答:使用Xtra  buddy API可以实现。

问:关于the key的问题?

答:在the key的值是一直不变的除非下一次再按一个键,没有办法清除 the key的值,所以编写程序的时候会出现一些问题,有如下解决办法:

第一种 就是使用   if the keypress("字符名称") 来解决的

第二种 就是使用

  on keydown

      if the key=“xXXX”来解决的

要避免the key 的这个问题就是把它放在 on keydown这个事件中这样只有当按键以后才会执行这个the key

避免了不变化的问题

发生问题的原因是

首先设置sprite(1)。visible为false

在帧脚本中家了

on exitframe

if the key="1" then sprite(1).visible=true

end

结果在后来若干帧之后我同样再操作一边的时候

sprite(1)。visible为false

死活没有做用原来是该帧中写了依据

on exitframe

if the key="1" then sprite(1).visible=true

end

而前面的 1已经安下去了所以一进入这个帧条件就生效所以 隐藏的那句话就不其作用了

而用keypress没有问题

一、Authorware篇

问:如何使制作的光盘自动播放?

答:在根目录下加入Autorun.inf 文件。其格式为:

[autorun]

ICON=图标文件名

open=应用程序文件名

问:怎样才能让图片全屏?

答:双击图片,设置图片比例。

问:在AW中如何插入动态的GIF图片?

在菜单中选择insert/media/quicktime3,在弹出的页面中单击browse,选择gif文件就可以了。

Authorware 5.1以上的版本可以直接插入。

问:怎么能够实现配音说完以后背景音乐还能够播放?

如果你两个声音都是wav文件就会有问题。Authorware里面不可以同时播放两个wav文件的解决方法

1把背景音乐做成midi, 配音用wav。

2 使用DIrectmedia Xtra插件可以同时播放多个声音

问:如何插入并控制一段Powerpoint的文件?

答:插入后,在Edit下,Ole  Object下面选择attribute,在Ole Package前打勾,即可。用Ole的话,打包后在其它计算机上播放可能会不正常(如果它没装PowerPoint的话)

问:导入AVI,打包后,不能正常运行该视频?

答:播放时需要A5VF32.XMO文件,看看有没有Copy过去。

问:程序播完后,如何能去换掉MM公司的版权信息?另外打包后的图标如何更换?

答:关键在runa5w32.exe这个文件,用一个编程用的资源编辑器改一下就可以了,同时也可以更改打包文件的图标,版权信息,状态栏信息。不要试图去修改打包完成的*.exe文件,往往会破坏文件造成运行失败。

问: AW中用哪一个命令可以调用.A5R文件?

答: jumpfile跳到.a5r

jumpfilereturn跳到外部文件.exe

问:怎样加入GIF动画?

答:用aw5.1以上的版本可以通过Inset->Media->a gif

5.1以下可以用外部函数调用

问:等待图标上Continue字样能改成别的吗?

答:Modify->File->Properties->Interaction命令可以修改。

问:如何制作一个自动根据显示器分辨率自动调整的课件?

答:调用外部函数Cover.U32,里面有两个选项,Cover覆盖屏幕,Uncover显现屏幕,一定要记得退出程序时用Ucover还原。

问:请问在AW是用什么记录Windows\system32\的路径?

答: 函数在Fileio.x32中getOSDirectory()可以得到安装操作系统的目录,“windows\system32\”即为“getOSDirectory()^"\\system32\\"”,另外还有很多外部函数具有这样的功能。

问:怎样在Authorware中插入mp3?

答:插入mp3的方法很多,主要有:

   使用QuickTime 插入,同样可以插入多种媒体文件,而且AW对QT的支持也是很好的。最重要的是它是免费的,只要你安装了QT4。0以上版本就可以了

使用外部函数调用,我们可以通过调用外部扩展函数来插入mp3,很多函数都支持!可以在网上查找一下。

问:移动鼠标就自动退出的程序该如何做?

答:可以由两种方法制作:

  a.可以做一个热区交互(鼠标移入相应),吧热区覆盖整个屏幕,后面放个退出

  b.使用计算图标

mx:=CursorX

my:=CursorY

repeat while mx=CursorX&my=CursorY

end repeat

  Quit()

  注意:执行程序时鼠标千万不要动,一动就退出。此可以放在屏保中用。

问:在AUTHORWARE中导入WORD或EXCEL文件,如何实现滚屏显示?

答:目前只有ole可以做到。

问:如何快速选择图标? 

答:1.快速选择连续的图标:如果要选择一组连续的图标,可以用左键在流程线上拖动 产生一矩形框,包含在框中的几个图就可选中。然后统一操作。

2.快速选择不连续的图标:对于不连续的图标,可先按住SHIFT键,然后用左键依 次选择所需的图标,选择完毕统一操作。

如何快速引入多媒体对象?

为了在程序中插入一段声音,往往是先在流程线上放一声 音图标,然后再通过该图标插入声音,其实Authorware支持文件的直接拖放,你完全可 以不用声音图标,而直接将某一目录下的一个声音文件用左键拖到流程线上,Authorwar e会自动替你将声音图标加上,方便快捷。对于图像、影像、文字等都可以采用这样的方 法,使得多媒体的创作更为直观。

如何快速调整文字界宽?

将鼠标箭头置于字符边框的调节方框上点击,就可以快速微调宽度,使字符正常显示。

问:如何将图片作为外部联结引入到程序中,并如何设置引入图片的路径?

答:Import时选择Link方式.如果希望动态改变链接的文件,在Import时文件名一栏中填一个等号和一个变量名如"=MyDynFile",程序中动态改变MyDynFile变量的内容就可以动态显示不同的文件。

问:如何显示函数中的变量值?

答:在显示图标中使用这样的形式:{变量名}。

问:怎么才能在程序中实现对Wav的控制?

答:使用Authorware提供的函数MediaPause,MediaPlay,MediaStop,MediaSeek等。

问:如何去掉文件的File菜单项?

答:先设置一个与File重名的下拉菜单交互(把交互名改成"File"),然后用擦除图标将其擦去即可。

问:如何才能随心所欲地暂停和继续程序播放?

答:在程序前面做一个永久交互,方式为return,分支中放一个wait图标。

问:在Authorware中如何制作一组bmp文件,然后用数字电影引入?

答:制作一组256色的BMP位图,并以数字序列的方式命名,数字长度为4位,如my0001.bmp,my0002.bmp...,然后在AW中用数字电影图标选择BMP序列类型并导入第一幅图即可,AW会自动导入全部图片组成动画。透明色同FLC动画。注意目前的Photoshop等工具制作出的256色BMP图AW不能识别,解决方法可以用画图工具打开每一张图,做一点看不出来的改动再存盘即可。

问:Authorware5.0中“级别”、“图标名称”等一系列文字变得看不清楚,该如何解决?

答:这是因为你的系统中装了与AW冲突的字体,找一下,把那些字体删掉就行了。

问:怎样用Authorware全屏播放MPG或AVI?

方法1:在视频图标下放一个空图标,执行之,到空图标时会自动进入编辑状态,点中视频就可以放大它了。

如何使用ODBC连接数据库?

1、ODBCOpen(WindowHandle, Var,数据源,用户名,密码) ,WindowHandle只要照写就行了,它是Authorware的系统变量,是演示窗口的句柄。举个例子: odbchd:=ODBCOpen(WindowHandle, Var, "dd", )假设这里dd是我在控制面板中设的ODBC数据源,是PARADOX数据库,所以不用用户名和密码;

2、然后可以用SQL语句来查询结果了,如果要从我的PARADOX目录中的KEY.DB表中查出所有记录的KEYNO字段值,这样写:

Data:=ODBCExecute(odbchd, "select KEYNO from key.db") ODBCClose(odbchd) ,从中取出KEYNO的值放在变量DATA中。

3、关闭数据库连接,ODBCCLOSE(odbchd)

要注意结果是一个字符串,可以用字符串处理函数处理,为了防止不必要的麻烦,请构造好合适的SQL语句,以免产生巨大的结果字串,详见各种SQL语言资料。

如何制作永久性按键交互?

在触摸屏查询项目的制作中,我们不能在鼠标上加入退出功能,因为不能让用户中断程序的运行。但是维护人员每天要结束程序关机如何处理呢,简单的做法是用键盘实现退出,而键盘平时是锁在机柜中的。但是你可能发现,想在程序运行的任一时刻结束运行,通过按键交互是不行的----因为按键交互没有永久性选区项!这里提供一种变通的做法:在程序开始处加入一个热区交互并设为永久性,然后把热区拖动屏幕外面不可能点击到的位置,最后给它设置一个热键如ESC即可,程序运行的任一时刻按ESC都会进入这个交互分支。不通过其他工具调用默认浏览器打开Html文件还记得我们提过的JumpOutReturn吗?用就它将要打开的HTML文件名放在第二个参数--文档名参数中就可以了。如JumpOutReturn("",FileLocation^"readme.htm")。就是这么简单:)。要打开WEB上的网页?这样做:JumpOutReturn("","http://studybk.my169.com/index.htm")。注意文件名不能省略,所以只能打开指定的Web文件,而不是任意的URL。同理,这个方法不能调入默认邮件程序发邮件,看来第三方的工具还是有机可乘的啦。

问:如何快速预览一个图标中的内容?

答:用右键单击,就会自动演示其中的内容,再次单击则结束。对 于显示图标,会显示其中的内容;对于声音图标,则自动播放声音;对于影像图标,则播放包含的影像;对于擦除图标,自动显示要被擦除的对象,非常方便。

问:如何制作隐型菜单?

答:用热区与热对象结合。

问:如何改变鼠标样式?

答:可在AW中加载(填加)自定义鼠标,然后使用SetCursor(type)系统函数更改鼠标样式。其中自定义鼠标样式,type从51开始。详见AW中S etCursor(type)函数说明。

问:做Login时怎么让Password显示为星号?

答:插入ActiveX:RefEdit.Ctrl,将PasswordChar设置为*即可。

问:如何在显示图标里面播放声音?

答:1打开显示图标

    2选择File import

    3 选择 external选项

    4 把file name这里改成*.*

   5 试图导入一个 .wav文件.但是你被告知不可那么做

   6 先导入一个图片代替一下 (外部连接)

   7 双击图片

   8 单击导入按钮

   9 把file name这里改成 *.*

   10 导入.wav文件这次你可以导入了!!!!不管外部还是内部

   11直接双击图标播放

我来说两句 去相关俱乐部 发短信息
     为搜狐IT频道查错 得每日精彩大奖——点击可了解详细信息
搜狐IT频道:体察IT业界动态,传播IT时尚生活——点击进入 >>滚动新闻
相关连接
请发表您的看法
用户: 匿名发出
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。
留言:
*经营许可证编号:京ICP00000008号
*遵守《互联网电子公告服务管理规定》
*遵守《全国人大常委会关于维护互联网安全的规定》

新闻搜索
关键字:

三重奖励,百分百中奖
·找老乡尽在激情老乡会
·攒魔法袜子拿圣诞礼物
搜狐彩信最新推荐
·[] 眉飞色舞
·[] 厉鬼再现
热门词:必杀功 林忆莲
精彩订阅
新闻资讯
美国正式宣布萨达姆已被捕!
订阅 焦点新闻,了解详情


搜狐商城
·影视|徐静蕾我和爸爸
·音乐|欧美音乐盛典展
·书籍|黑客大曝光
·书籍|1元图书特卖场
·化妆|畅销精品优惠哦
·精品|zippo火机5折起
更多...


网站登录 - 搜狐招聘 - 广告服务 - 联系方式 - 保护隐私权 - 公司介绍
Copyright © 2003 Sohu.com Inc. All rights reserved. 搜狐公司 版权所有