在浏览器中播放不了swf文件

大家好,笨人正在学习做简单的网页,遇到了个问题,请教一下。前提:我使用工具将该swf文件转换为fla文件,再使用flash8进行修改了一下链接,重新导出为影片(即swf文... 大家好,笨人正在学习做简单的网页,遇到了个问题,请教一下。

前提:我使用工具将该swf文件转换为fla文件,再使用flash 8 进行修改了一下链接,重新导出为影片(即swf文件)

问题:在使用Dreamweaver时,插入插件(swf文件类型的),然后使用浏览器预览时,swf文件就播放不出来了

首先,我直接播放该swf文件时,可以播放。

我使用flash 8,进行发布,可以在浏览器中播放(我是对该swf文件转换为fla文件,进行修改后,再导出为swf影片)

使用Dreamweaver,插入插件(也就是把该swf文件)在编辑时,也就是直接在Dreamweaver中播放,可以播放

问题来了
我插入后,使用浏览器浏览时,就浏览不出来了,浏览器上只是在左上角显示一小图片。

请教,这是什么问题,为什么会这样,该怎样解决,请诸位多多赐教
展开
 我来答
louyhh1122
2009-01-15 · TA获得超过184个赞
知道答主
回答量:67
采纳率:0%
帮助的人:53.8万
展开全部
swf是Macromedia公司的动画设计软件Flash的专用格式,是一种支持矢量和点阵图形的动画文件格式,被广泛应用于网页设计,动画制作等领域,swf文件通常也被称为Flash文件。

SWF文件结构:

swf文件的整体结构是 header + body的组成。

文件的开始是一个[文件头]

它的结构如下:

字节 名称 说明

1 Signature

“F”表示非加密格式,”C”表示加密格式

1 Signature “W”无特殊意义

1 Signature “S”无特殊意义

1 Version 版本号,它表示对应播放器版本

4 FileLength 整个文件长度,低位在前

N FrameSize

RECT结构体,表示屏幕大小,具体结构和长度根据数据变化,分析方法另外讨论。

2 FrameRate 帧频,默认为12,高位在前

2 FrameCount

帧数,表明文件根下的帧数,低位在前

以上是swf中,最简单的一个tag,一个完整的swf文件是由很多独立的tag组成的。每一个tag都包括一个头和一个数据体,头有2种类型,短tag型和长­tag型。

短tag型由2byte构成,前10个bit表示tag类型,后6个bit表示tag长度。

长tag型由6byte构成,前10个bit表示tag类型,后6个bit固定为全1,后4个byte代表tag长度。

tag的长度不同于文件头的长度FileLength,它是除去tag头后的长度。

(另外)只有非加密的swf文件可以直接用以上的方法解析,加密的文件需要另外增加一步处理。具体方法由于牵涉到版权问题,这里我不加说明。

这份资料可能对flash设计意义不大,但如果有人用的着,我会继续分析一下,如果有人也在做这方面的调查,欢迎和我一起讨论。

第2节

前节说明了swf文件是由1个head和1个body构成的。

并且解析了header的结构,和一个tag的header部分的简单说明。

下面余下的就是swf文件的body了。

整个文件body是由大量的tag组成的,通过分析tag的head部分,可以立刻知道这个tag的类型代码和长度。

如果你无法识别这个tag的类型,也可以利用tag的长度,直接跳过这个tag。

这种方式保证了版本的兼容性,即使出现了新的tag,老版本的播放器还是能够解析完整个swf文件而不出现错误,大不了就是不能提供新的功能而已。

以下就是swf文件结构的一个形象概念。

(文件header)(文件body)

|

(tag 1)(tag 2)(tag 3)(……)

|

(tag header)(tag body)

|

(tag 类型代码)(tag 长度)

这样大家是否对swf文件的结构有了一个基本的认识?

下一节我会分析一下几个swf必有的tag,包括

backgroundColor tag,showFrame tag和end tag

第3节

setBackgroundColor tag

这个tag是直接跟在文件head后面的第一个tag,是文件中必然存在的。

它的结构如下:

长度(bit) 名称 说明

16 header tag头,短tag型

类型码为9

24 BackgroundColor

RGB类型,右3个字节,分别表示红、绿、蓝

showFrame tag

这是文件最后第2个tag,它是必然存在的。

结构如下:

长度(bit) 名称 说明

16 header tag头,短tag型

类型码为1

end tag

结束tag,它的作用不用我说了,必然是文件的最后一个tag。

长度(bit) 名称 说明

16 header tag头,短tag型

类型码为0

下一节我将讲的是character ID

和Depth的意义和textField的基本tag组成。

(另外)感谢AOL的补充和解释。

第4节

一个textField就是一个文本框,文本框有3种,静态的,动态的,和输入型。作为tag的话,它只有2种,静态的和动态的,输入型不过是动态的一种特别形­式。

这里讨论动态文本框的组成。

它由3个tag组成,2个定义tag和一个控制tag

分别是:

定义tag DefineFont2 DefineEditText (针对player 7.0

如有不同情况请检查播放器版本)

控制tag PlaceObject2

DefineFont2 定义了一个字体信息,

DefineEditText引用了定义的字体,并定义了显示的文字信息,而PlaceObject引用了定义的文字信息,并控制了文字的显示。

他们之间的引用就是依靠character ID进行的。

character

ID就是一个从1开始的数字标示,如果中间出现缺漏,从缺漏开始的所有character

ID都被忽略,而重复的话,后出现的将覆盖先出现的tag。

DefineFont2用一个character ID

来标示自己,DefineEditText和PlaceObject2也同样如此。但并不是所有的tag都有character

ID。

另外,PlaceObject2虽然也有character

ID,但它并不是用来标示自己的,而是用来调用的。

而深度Depth在3个tag中只有PlaceObject2拥有。

这3个tag的关系就是这样。这3个tag的结构我会在下节中说明。(抱歉,每次都说一点点!)

第5节

DefineFont2

这个tag的作用是定义一个字体,或者一组静态轮廓字,用以给DefineEditText使用。

关于文字的几乎所有信息,都可以在这个tag中进行设置,因此,这也是一个相当复杂的tag。

它的结构如下:

长度(bit) 名称

说明

headerLength header

tag头,类型码为48

16 FontID character

ID,唯一的标示

1 FontFlagsHasLayout

根据字面解释,判断是否有变型的标记

1 FontFlagsShiftJIS

是否使用ShiftJIS编码

1 FontFlagsSmallText

是否使用小字体显示

1 FontFlagsANSI 是否使用ANSI编码

1 FontFlagsWideOffsets

是否使用32位偏移量

1 FontFlagsWideCodes

是否使用16位文字编码

1 FontFlagsItalic

文字是否是斜体

1 FontFlagsBold

文字是否是粗体

8 LanguageCode

语言编码,有相应的编码表对应

8 FontNameLen 文件名长度

FontNameLen*8 FontName

文件名称(使用utf8编码)

16 NumGlyphs 轮廓字个数

32/16 OffsetTable

根据FontFlagsWideOffsets,为32位,否则为16位

32/16 CodeTableOffset 同上

不定*NumGlyphs GlyphShapeTable

轮廓字信息,为shape结构(又是一个复杂结构)

16/8 CodeTable

根据FontFlagsWideCodes,为16位。编码表,为固定值UCS-2

16/0 FontAscent

根据FontFlagsHasLayout,为16位,否则没有该字段

16/0 FontDescent

根据FontFlagsHasLayout,为16位,否则没有该字段

16/0 FontLeading

根据FontFlagsHasLayout,为16位,否则没有该字段

16/0*NumGlyphs FontAdvanceTable

根据FontFlagsHasLayout,为16位,否则没有该字段

RECT*NumGlyphs FontBoundsTable

根据FontFlagsHasLayout,为16位,否则没有该字段

16/0 KerningCount

根据FontFlagsHasLayout,为16位,否则没有该字段

KERNINGRECORD*KerningCount

FontKerningTable

根据FontFlagsHasLayout,为16位,否则没有该字段

如果单纯分析动态文本的这个tag的信息,只需要分析到上面的fontName部分就足够了,其他信息只对轮廓字,也就是静态文字有效。

那是flash
用Adobe flashiplayer 9 就可以了
或者楼上的暴风
快乐影音也可以的
wucaiskyxuzhi
2009-01-15 · 超过31用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:0
展开全部
那浏览器可以放别的网站的SWF吗? 还有 请你安装adobe flash player 10播放器 flash8 是不能播放用AS3语言编写的flash的!! 至少也要flash player 9 你的flash软件也好 播放器也好 都太老了啊 我用AS3写的flash你更放不起
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
woodgag
2009-01-15
知道答主
回答量:37
采纳率:0%
帮助的人:0
展开全部
建议更换一下IE的版本因为FLASH大部分需要引用ActiveX控件~下载个火狐~在试验一下~应该就可以解决了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
在上清宫转陀螺的草莓
2009-01-15 · TA获得超过639个赞
知道小有建树答主
回答量:278
采纳率:0%
帮助的人:190万
展开全部
建议重新安装一下你的浏览器,用IE7.0可能会好一些,我一直都是用的这个。祝君好运!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式