`
sealbird
  • 浏览: 570662 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

swf的详细介绍

    博客分类:
  • Flex
阅读更多
介绍链接一
http://as3.iteye.com/blog/792392
介绍链接二
http://as3.iteye.com/blog/972638
介绍链接三[flash=200,200][/flash]

from http://wenwen.soso.com/z/q173146756.htm

引用
网页 图片 视频 音乐 搜吧 问问 团购 新闻new 百科 地图 更多» 登录 搜搜问问      问问首页 问题库 知识频道 用户频道 问问活动 问问团队 问问商城 电脑/数码生活家居QQ专区游戏体育运动娱乐/明星休闲/爱好艺术/文学社会/人文教育/科学健康/医疗商业/理财情感/家庭地区问题 全部问题 >电脑/数码>多媒体>问题页加入问问快乐签到家族,iPhone4、拍拍红包好礼等你拿! 已解决问题收藏 分享 QQ空间 腾讯微博 腾讯朋友 新浪微博 人人网 豆瓣 swf的详细介绍???
[ 标签:swf ] swf的详细介绍?? MoneyUserich 回答:1 人气:1 解决时间:2010-01-05 14:11
满意答案好评率:100% swf(shock wave flash)是Macromedia(现已被ADOBE公司收购)公司的动画设计软件Flash的专用格式,是一种支持矢量和点阵图形的动画文件格式,被广泛应用于网页设计,动画制作等领域,swf文件通常也被称为Flash文件。    swf(Shock Wave Flash的简称,读作swif),是Adobe Flash汇出后的档案格式。它的普及程度很高,现在超过99%的网络使用者都可以读取swf档案,即使任天堂Wii(使用Opera浏览器的话)、Sony的PSP也可以能看到。
  这个档案格式由FutureWave创建,后来伴随着一个主要的目标受到Macromedia的支援:创作小档案以播放动画。这个计划的理念是可以在任何操作系统和浏览器中进行,并且让网络较慢的人也能顺利浏览。[1]
  swf 是shock wave flash的缩写,正如rm = real media mp3 = MPEG Layer 3 wma = Windows Media Audio 一样
  可以用 Adobe Flash Player 10.0.32.18软件打开
  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部分就足够了,其他信息只对轮廓字,也就是静态文字有效。
评价答案
您已经评价过!好:5 您已经评价过!不好:0 您已经评价过!原创:5 您已经评价过!非原创:0 问问团队电子相册联盟共1人编辑答案 2010-01-05 04:46 我有更好的回答 收藏 分享 QQ空间 腾讯微博 腾讯朋友 新浪微博 人人网 豆瓣
相关知识
•swf应该在哪儿去下,。1回答2010-10-04•关于swf格式2回答2011-07-18•下面的swf是什么?1回答2011-04-26•6300支持swf吗?3回答2011-02-08•谁能帮我弄这个视频的SWF啊?1回答2011-07-03 更多swf+tag+%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E相关知识>>
swf文件用什么打开swf播放器swf转换器swf转aviswf文件swf是什么文件swf转gifswf格式
我要评论浏览全部评论>>
   在线求助
团队:..PS 类型:初级团 满意答案:3362 团队宣言:帮助别人,提升自己. •把下面的图片PS •http://user.newqcc.com/op/Op3.sw…   蓝色烟卷℡ 等级:12采纳率:55.7% •求一个ps5中文版,要完全破解的。… •怎么图片裁剪? 
帮助 提意见 Copyright © 1998 – 2011  Tencent.  All Rights Reserved.

关闭
在上方输入您感兴趣的知识,点击搜索答案后,下方将出现您感兴趣的问题列表。

进入任一您感兴趣的问题查看,点选其满意答案处的4个评价按钮之一,即可完成对该满意答案的评价。
分享到:
评论

相关推荐

    Swift Axe MX(SWF分解工具) v1.2.021012

    同时还可以获得各组件的详细属性信息内置预览功能,不需要调用任何外部程序,特有的 COC 技术使得预览过程更加流畅清晰批量提取所有组件为独立SWF影片,还可以将音频和位图保存为 MP3、WAV BMP、JPG 文件支持彩色...

    flash 英汉字典 源代码 swf字典源码

    应各位网友要求,现在将flash词典源码共享出来,希望各为网友提宝贵的意见,一起学习。 本flash词典详细介绍及swf文件下载地址: http://download.csdn.net/source/3002778

    SWF2入门(一)

    本教程通过一个简化的购物车应用,介绍了如何使用 Spring Web Flow 2.0 来构建 Web 应用程序。本教程以讲解实例为主,为了读者更好地理解 Spring Web Flow ,也有部分理论的解释。详细参考...

    在PPT中插入倒计时器的详细步骤(带插入倒计时器的PPT)

    详细的介绍了如何在PPT中插入倒计时器的方法,并附有详细的截图步骤!!!此文件中包含了倒计时器的.swf文件,成功插入倒计时器的ppt文件,还有详细说明步骤的文档! 在PPT中插入swf,为保证播放时每页PPT都播放插入...

    在PPT中里加插入倒计时器的详细步骤【带插入倒计时器的PPT】

    详细的介绍了如何在PPT中插入倒计时器的方法,并附有详细的截图步骤!!!此文件中包含了倒计时器的.swf文件,成功插入倒计时器的ppt文件,还有详细说明步骤的文档! 在PPT中插入swf,为保证播放时每页PPT都播放插入...

    下载swf、网页PDF、网页视频.docx

    文档详细介绍了如何将网页中PDF文件的下载方法 网页嵌入视频下载方法 Chrome插件下载安装方法 插件功能与使用方法

    js获取html参数及向swf传递参数应用介绍

    HTML页面是在客户端执行的,这样要获取参数必须使用客户端脚本如JavaScript,在这点上与服务器端脚本获取参数方式有所不同接下来将详细介绍下感兴趣的你可不要错过了哈

    发电式转速表swf

    发电机转速表的flash模拟器,详细的介绍了发电机转速表的工作情况

    TCP/IP工作流程SWF

    详细介绍了TCP/IP工作的流程,适合学习网络基础的初级学员

    电梯门Flash.swf

    电梯门Flash.swf.rar 介绍了关于电梯门Flash.swf的详细说明,提供其它知识的技术资料的下载。

    java版的头像图片剪裁上传camera.swf组件

    他是Discuz!论坛中的一个功能,很多人使用,而且功能比较强大而且使用简单,实质上就是一个flash和后台完成的数据交换,通过flash完成...如果有什么问题,可以到我的博客查看详细功能介绍 http://www.za58.com 杂物吧

    flex动态加载swf皮肤示例代码

    动态加载swf皮肤,对经常使用flex的朋友来说并不陌生,在本文为大家详细介绍下具体的实现方法,感兴趣的朋友可以参考下

    经典JAVA EE企业应用实战基于WEBLOGIC JBOSS的JSF+EJB 3+JPA整合开发——源码第3章

    EJB 3部分则包含Session Bean、Message Driven Bean的详细介绍。本书内容主要包括三部分,第一部分介绍Java EE开发的基础知识,以及如何搭建开发环境;第二部分详细讲解了JSF RI、EJB 3的Session Bean等Java EE知识...

    Flash 文件格式转换器 V1.0.zip

     ◎ 软件详细介绍 * 可批量将SWF文件转换为EXE文件* 可批量将EXE文件转换为SWF文件* 智能判断转换类型。如果你添加的是SWF文件,程序将会自动为你转换为EXE文件;如果你添加的是EXE文件程序将会为你转换为SWF文件...

    如何在ShopEX产品详细页中添加友言代码?

    图文介绍了如何在如何在ShopEX的产品详细页中添加友言评论框,易开店、分销王,ShopEX485都可以使用。

    经典游戏-魔塔 v1.12-仿制版(Java实现).zip

    项目文档:详细的项目文档,介绍了项目的背景、功能、架构以及实现细节,帮助你更好地理解项目。 操作手册与使用说明:针对每个游戏项目,都准备了详细的操作手册和使用说明,手把手教你如何运行和测试项目。 学习...

    Flash与C#交互全集(bs与cs).rar

    全面介绍flash与C#的交互数据的方式,包括B/S与C/S 两种方式,范例比较简单,比较详细

    flashmtv的制作

    这两款文字特效软件,内置了几百种效果,做出的歌词效果,很多是用Flash无法完成的,至于怎样使用这两款软件这里就不做详细介绍了,点击查看这两款软件都是所见即所得,也就是说你添加的效果很快就能在软件中预览到,...

    图片播放器 Bcastr 3.0 beta flash

    详细介绍: Bcastr 3.0 beta flash 通用的图片浏览器 bcastr3.0 beta 是一款通用的图片浏览器 可以用于各种新闻系统或者blog系统 .可以读取xml设置播放列表,自定义xml地址 .可以将图片地址直接写网页中直接,不...

    360看图软件v1.1免安装绿色版.rar

    软件介绍: 这个是从360压缩中提取出来的图片查看器,已经制作为绿色版,界面简洁实用,启动速度快,可以完全用来取代系统自带的图片查看器,支持图片另存,可以设置保存质量。支持常用图片格式以及相机原始RAW...

Global site tag (gtag.js) - Google Analytics