您的位置:首页 > 移动开发 > Objective-C

Adobe TechNote:tn_12701(Flash OBJECT and EMBED tag attributes)

2008-02-03 00:02 405 查看
翻译Adobe TechNote:tn_12701

Flash OBJECT和EMBED标签属性

本文档覆盖如下(话题)
必选的标签属性;
可选的标签属性;
Active Content JavaScript.

本文档列出了为发布Adobe Flash视频而必选和可选的OBJECT和EMBED标签属性。
对于这些标签属性的特定用法,可以参考Using Flash手册(部分),该部分专门讲解OBJECT和EMBED的使用(其确切的主题涵盖(vary among)了Flash的不同版本)。你也可以从"Adobe Flash OBJECT和EMBED标签语法(TechNote tn_4150)"一文中获取一些信息。

必选的属性标签
当一个HTML页面需要播放Flash视频时,OBJECT和EMBED标签的如下属性是必选的。
OBJECT和EMBED都必选的
* WIDTH - 指定Flash视频的宽度,可以用像素数,也可以用相对于浏览器窗口的百分比来指定;
* HEIGHT - 指定Flash视频的高度,也可以用像素或者百分比。
仅OBJECT标签必选的属性
* classid - 为浏览器标识(identifies)Flash ActiveX。(参考TechNote: tn_4150示例代码中提供的正确值);
* codebase - 标识Flash ActiveX控件的位置;在没有安装它的情况下,以使浏览器可以自动下载并安装之。(参考TechNote: tn_4150示例代码中提供的正确值);
* movie (param) - 指定将要载入的视频的位置(url)。
仅EMBED标签比选的属性
* src - 指定将要载入的视频的位置(url)。
* pluginspage - 标识Flash播放器插件的位置;在没有安装它的情况下,以引导用户下载并安装之。(参考TechNote: tn_4150示例代码中提供的正确值);

可选的标签属性及其可能的值
定义OBJECT和EMBED标签的时候,如下属性是可选的。对于OBJECT标签,所有的属性都以param标签的形式定义过了,除了(unless otherwise)需特别指定的属性。
* id (仅适用OBJECT标签的属性) - 视频标识。为host(如,web浏览器)标识Flash视频,以便它可以为脚本语言(如,JavaScript)引用;
* name (仅适用于EMBED标签的属性) - 视频名。为host环境(通常为web浏览器)标识Flash视频,以通过脚本语言(如,JavaScript,VBScript)来引用它;
* swliveconnect - 可能的值:true和false。当首次载入Flash播放器的时候,指示浏览器是否开启Java(支持)。忽略此属性的话,其默认值为false。如果在同一web页面使用JavaScript和Flash视频,那么为了保证FSCommand起作用,就必须运行Java。
* play - 可能的值:true和false。在浏览器加载视频后,指示视频是否立刻开始播放。忽略的情况下,其默认值为false。
* loop - 可能的值:true和false。指示视频播放是无限制地循环,还是到最后一帧就停止播放。忽略此属性,则其默认值为false。
* menu - 可能的值:true和false。
若true - 显示完整的菜单。使得用户可以控制视频前进(enhance)与后退(playback);
若false - 那么菜单仅仅显示设置选项和about选项。
据意推测,这里的menu应该指右键点击Flash视频时的右键菜单。
* quality - 可能值:low, high, autolow, autohigh, best。
low 更加注重回放的速度,而不是(视频播放)效果(appearance)。从不使用反走样(注:个人理解"反走样(anti-aliasing)"可能指改善视频在画面质量方面的播放效果);
autolow 首先保证播放速度,在可能的情况下,也改善画面质量。回放的时候,一开始关闭反走样,然后检测到CPU可以处理的话,就开启反走样;
autohigh 首先同时保证回放速度和画面质量,但是如果必要的话,会以牺牲画面质量为代价保证回放速度。回放的时候,一开始就开启反走样。如果实际的帧播放速度降至低于其指定值的时候,就关闭反走样以改善回放速度。autoplay的设置可以代替(模拟)Macromedia Flash的View->AntiAlias Setting菜单功能;
medium 某些程度上应用了反走样,但是并不使位图(bitmaps)(编译)平滑。该选项会产生比low选项更高的质量,但是不如high选项;
high 比起注重回放速度,high选项更加注重画面质量。始终开启反走样。如果视频不包括动画,会平滑位图(bitmap);反正,则不进行位图平滑;
best 提供最佳的播放效果,不考虑回放速度。所有的输出都进行了反走样处理,且所有的位图都平滑处理过。
* scale(视频播放界面缩放) - 可能的值:showall, noborder和exactfit。
默认:show all。使得整个视频在指定的区域内可视,保持视频原始的高宽比(aspect ratio),不扭曲视频(distortion)。边(界)会出现在视频的两边。
noborder 在指定的区域扩展(缩放)视频,比扭曲视频(distortion)(即,不改变其高宽比,个人理解),这样就会修建视频,但是会按比例缩放。
exactfit 保证食品在整个指定的区域可视,这样就会造成失真(扭曲,distortion),不再可以保持视频原始的高宽比。
* align(对齐) object的属性。可能的值:l(left), t(top), r(right), b(bottom)。
默认:在浏览器窗口内剧中。浏览器窗口比视频尺寸小的时候,则剪掉(crop)视频的边界。
l,t,r,b分别保证视频相对于浏览器窗口的指定边对齐。如果必要,则剪掉(crop)其他三边的边界(border)。
* salign。可能的值:l, t, r, b, tl, tr, bl, br。
l, t, r, b分别保证视频沿浏览器窗口的对应边对齐。并且如需要,则剪掉视频其他三边。
tl, tr分别保证视频沿浏览器窗口的对应边对齐。并且如需要,则剪掉视频下边,右边或左边。
bl, br分别保证视频沿浏览器窗口的对应边对齐。并且如需要,则剪掉视频上边,右边或左边。
* wmode - 可能的值:window,opaque(不透明),transparent(透明)。用于设置flash视频在浏览器窗口中的窗口模式属性为:透明,分层和定位(positioning)。
window。flash在web页面里,其自己的矩形窗口内播放。我的理解:推移开把web页面内的其他内容的位置。
opaque。flash掩盖所有(位置)在其背后的web页面的内容。
transparent。在flash的所有透明的部分,显示其背后web页面的内容。这样可能会降低动画质量。
* bgcolor - [16进制的]#RRGGBB格式的背景色。指定flash的背景色。通过该属性覆盖flash文件自身设计时的背景色。该属性不影响HTML页面的颜色。
* base - 根目录或url。指定用于解析flash播放器视频里所有相关路径描述(all relative path statements)的根目录或url。该属性在flash播放器视频和其他文件独立存储的时候是很有用的。
* FlashVars - 允许的值:欲传给Flash播放器的变量(variable)。要求Macromedia Flash Player 6或其后来版本的支持.
传递根目录级的变量(root level variables)给视频(这里视频指的是swf格式的flash动画;或者swf格式的播放器,通过传递给它的(路径、文字等)参数,显示(播放)参数指定的内容)。 这串字符的格式是用'&'分割的一组"name=value"的组合.
* 浏览器将可以支持最长64KB的字符串;
* 通过"Using FlashVars to pass variables to a SWF" (Adobe TechNote tn_16417),可以了解更多关于FlashVars的信息.

注:方括号里斜体字用来指示程序员选择使用它们。

ACTIVE CONTENT JAVASCRIPT
当以HTML页面形式发布一个Flash文档时,在Flash CS3专业版里如果选择了'Flash Only'或者'Flash Https'作为HTML模板,那么一个自动生成的文件名为AC_RunActiveContent.js文件会链接到HTML文件。为了动态内容嵌入(active content embedding),HTML文件需要和该JS文件一起使用。如果需要对动态内容(active content)有更深入的了解,请访问:Active Content Developer Center
注意:通过Flash Active Content Update Extension,将使得Macromedia Flash 8对基于JavaScript的动态内容嵌入成为可能。
JavaScript函数AC_FL_RunContent()用来动态生成为保证浏览器支持您的flash视频所必需的OBJECT和EMBED标签。该函数包含在AC_RunActiveContent.js中,在浏览器中欲显示该Flash视频的地方调用。见如下示例代码:




<script language="javascript">
if (AC_FL_RunContent == 0)...{
alert("This page requires AC_RunActiveContent.js.");
}
else{
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0', 'width', '550', 'height', '400', 'src', 'myFlashMovie', 'quality', 'high', 'pluginspage', 'http://www.macromedia.com/go/getflashplayer', 'align', 'middle', 'play', 'true', 'loop', 'true', 'scale','showall', 'wmode', 'window', 'devicefont', 'false', 'id', 'ACTest', 'bgcolor', '#ffffff', 'name', 'myFlashMovie', 'menu', 'true', 'allowScriptAccess','sameDomain', 'movie', 'myFlashMovie','salign', '' );
} //end AC code
</script>

函数AC_FL_RunContent的参数是涉及到定义在OBJECT和TAG内的属性或参数的name-value对。AC_FL_RunContent函数会自动区分是OBJECT/EMBED中,还是PARAM中已知的且需要被替换的属性。任何你传递给函数AC_FL_RunContent的参数,如果不是已知的话,会默认为PARAM标签和EMBED的属性。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: