SWF文件结构解析
所有 的 S WF文件 都 由文 件头 开始 。文件头 的结构 如表 1 示 。 所
sF 1文件头 『 I 孚段 类型 说明
标志 标志 标志
版本 号
8 位 B 位 S 位
B 位
标志字节:“ ’ P 表示末压 缩, c 示压缩 “’ 壤 代表为 w 代表为, S
以在 处 理 S WF文 件 的 时 候通 过 工 具 移 除 、 入 、 辑 同 的字体 。 插 编 描述 标签 、 制标 签 和字 典 之 间的交 互关 系 控
如 图 3所 示 标签。 1标签 格 式 、 所有 的标 签 有标 签 头和 数 据块 组 成 。标 签 头 可 以
¥ F 件 巾标 签 W 文
.
每 一个 描述 标签 都 被指 定一 个 唯一 的角色 I D 字典 中的 内容被 存 储在 角 色 I D之后 。 控 制标 签 能够通 过 角色 I D在 字典 中找到 所需 内
分析 S WF文 件 的 时候 可 以跳 过 一些 不 明确 的数 据 块 。 样 也 可 以使 用 字 典 中 的数 据 进 行 更 复 杂 的 角 色定 义 。
2 1 年 第 6期 01
福 建 电
脑
6 9
个 字段 使 用一 个 RE T结 构 来 存储 .表示 它 的 占位 长 制标 签所 应 用 。字典 的建立 和使 用 应遵 循 以下 规则 : C
度 会 根 据 bt 描 述 而 随 时 改 变 显 示 尺 寸 字 段 的 i s的 R C E T结 构 的 X n和 Y n通 常 为 0 X a mi mi : m x和 Y a mx
角色 t膨状定义
角 色 2 声 音 定义
角色 1形状
角 色 2 声 音
是 短标 签 头类 型也 可 以是 长 标 签头 类 型 。短标 签 头类 型用 于数据 在 6 2字节 之 内 的标签 。 如果 标 签 的数据 长 度 不超 过 6 2个 字 节使 用 短标 签 。 长标 签 头类 型 可 以 而 用 于 数 据在 4 之 内 的 任何 标 签 。 短类 型标 签 如表 2 G
“ WS ) 或 ] 3 0【 0【 (C ” 。 WS表示 文 ( 5 5 Pae 之 前 的 版 本 兼 容 同 时 又 能 够 随 意 扩 展 新 的 特 ( F ” , 为 0 4 ,) 7,】 3 ” WS ) F l r y 件 没 有 压 缩 .WS表 示 第 8个 字 节 后 面是 经 过 Z I C LB 性。
・
.
一
度 。长类 型标 签 头 图表 3所示 。
标签头 记录 ( 类型) 长 宇段 TgoenLn t aCdhdegh
Lnt egh
声 音 流标 签必 须有 序 。 无序 的声音 标签 会 导致播 放 时也 无 序 。
.
.
类型 1 6
3 2
说明 高l位表示标签类型 0 低6 位始终为O3 xF
主要 介 绍 了 S WF文件 的组 成 , S F文件 的结 构进行 了解析 , 对 W 有助 于 大 家更 好 的 了解 S WF文件 的结构 。
【 关键 词 】 lh S F 矢量 标签 :Fa W s
1 引 言 、
8脚 本实 现 :WF格 式包 含 各 种标 签 . 签 提供 堆 ) S 标
代表SF W文件的版本 比如O0代表SF x6 W6
,
图 1 S F设 计 目标 W
文件 长度 3位 2 整个文件所占字节数 显示尺 寸 R c E 结构 sF I 场景的大小 『 单位为lw p(/ O t i 1Z 像素)
。
1适 合屏 幕显 示 : ) 需要适 合 屏幕 显示 同时支 持 抗锯 齿。 能够 快速 渲染 各种 颜 色格式 的位 图 、 动画 和交 互按
所示 。
标 头 录(类 ) 签 记 短 型 字 段 型 说 明
角色
描 述 标签
角色 3字体定义 角色 4文本定义 使用了角色 3 的字体
角邑 l 曲位 置 对 象
角 色 3 字 体
角色 4文本
控 制标 签
给 显示列 袭添 加形
仆
图 3 标 签 和 字 典 之 间关 系
钮。
帧速
1位 6
每秒的帧速 。通 过一个88 " .4数方式显示 。 ( 整数和小数各占l 8 位)
帧总数
l位 6
文件 中帧 的总数。
表 1 文 件 头 结 构
2易 于 扩 展 : 用 标 签 格 式 , 够 很 容 易 与 Fah 1 使 能 ls
文 件 头 由 三 个 字 节 。 或 为 0 4 ,x 7 O 5 x 6 O 5 。x 3
S WF ( ok w v ah s c a ef s1是 Marme i ( 已 被 栈 机解 释 需要 的字 节 码 字 节码 支 持 A t n eit h l co da 现 ci s r 语 o p
A O E公 司收购 )公 司 的动 画设计 软 件 f s D B l h的专 用 言 。FahPae a ls lyr提供 运 行 时 的 A t n eit ci S r 对象 模 型 o p 格式 , 是一 种支 持矢 量 和点 阵图形 的动 画文 件格 式 。 具 允许 FahPae 的图元 、 务交互 。 ls 1 r y 服 有非 常优 秀 的压缩 性 、 输性 和交 互性 。l h动画被 广 传 fs a S WF格 式经 历 了几 个 版 本 。直 到 S 5才 真正 明 WF 泛应 用于 网页设 计 、 网络动 画 、 网络游 戏 和 网络交 换 等 确 了 S WF标签 设 置 。WF S 6及后 面 的版本 改变很 小 . 一
2 S F文 件 介 绍 、W
S WF格 式 主要用 于在互 联 网上传 递 矢 量图 、 本 、 文
、 视 频和声 音 , 能 被 A o eFahPae 软 件 支持 。它 3 文 件 头 解 析 且 db l 1 r s v
图 2S WF文 件格 式
被设计 为一 种 高效 的传输 格式 。 设计 目标如 图 1 示 : 所
3S )WF文 件 中标签 (a) T g 的排 序
般 来 讲 ,WF中的 标签 ( a ) S T g- " 7以随 意 排序 。但 是 必 须遵循 以下规 则 : 如 果 是 S 8之 后 的 版 本 则 FlA tb t WF i tiue e r s标 签
一
hCdnL g l g e dnt oA e h 6 位
数 据块 里 面的 数据 可 以定 位 到 内部 的偏移 位 置 ,但是 例 如 .按 钮 和剪 辑标 签 都使 用 到 了定 义 它们 内容 的角 不 能定 位 到其 它块 中的偏 移 位 置 这 种 方式 使 我们 可 色。 文本 标 签也 包含 了字体 角 色 以便 于 为文 本 选择 不
6 8
福
建 电
脑
21 年第 6 01 期
S WF文 件 结构 解 析
徐 杏 芳
(长 江大 学计算 机 学 院 湖北 荆 州 4 4 2 3 0 3)
【 摘 要】 WF 目 :S 是 前流行动画 F s lh的专用格式,WF a S 具有非常好的压缩性 、 传输性和交互性。 本文
高0 表 标 类 1 示 签 型 位
低位 标 度 6 表示 签长 表 2 短类 型 标 签 头 :
.
标 签 的 长度 不 包 括 标 签 头记 录 自己的长 度 .仅 表 必 须 为第一 个 标签 。 示其 后 面数据 的长 度 。如 果 标签 为 6 3字 节或 者更 长 。 标 签仅 依 赖之 前 的标 签 。 而不 依 赖后 面 的标签 。 它将 存储 为 一个 长标 签 头 的 类 型 。长标 签 头 可 以看 成 角 色 的定 义 标 签 必 须 出 现在 引用 它 的 控 制 型标 个 标 签 长 度 为 0【 ) f的短 标 签 跟 着 一 个 3 3 2位 的 长 签 之前 。
S 6之后 的版本 才开 始使用 压缩 。 3方便 网络 传输 : 1 能够在 有 限或者 不 确定 的带 宽 下 开放 标准 压缩 的 .WF 版本 号 占一个 字 节 紧跟 在 标 志之 后 。版 本数 字 不 传输 。文 件使 用 压缩 来减 少尺 寸 同时支持 流 式渲 染 。 S I 字符 而 是一个 8位 的数字 。例如 S 4 WF , 4 1简 单 :WF格 式需 要尽 量 简 单 以使 它 的播 放 器 是一个 A C I S 版本 号字节 为 o o , 】 4 而不 是 A C I 【 S I 字符 ” ” 4。 小 且容 易 实 现 。同 时还必 须 尽量少 依 赖操 作 系统 的特 文 件 长度 字段 记 录 S WF文件 的 总长 度 . 括文 件 包 性 , 便跨 平 台。 方
・
描述 标 签定 义 了诸 如形 状 、 体 、 图或者 声音 。 字 位
・
定义 宽度 和高 度 。
-
帧速 字 段定 义 了每 秒 的播 放速 率 。这个 速 率是 无 法绝 对 保证 。 容并 对其 执行 某 种操 作 , 如显 示形 状 或者 播放 声音 。 例 帧总 数定 义 了 S WF文 件 的总 帧数 。 每个 角色 I D必 须 指定 一 个 唯一 的 I 不 允 许重 复 D. I 例如 。 D。 第一 个 角色 I D是 1 第 二个 是 2 角色 0被 指 , 。 4 tg解 析 、 a 定 为 表示 空 角色 的专 用 I 。 D 文件头之后 是一系列 的标记 的数据块 f 为” 称 标 并 不 是 只有 控 制标 签 才 能 引用 字 典 。描述 标 签 同 签 ”。所有 的标 签 (a 使 用公 用 的格 式 , 以程 序在 ) T 都 所
领域 。 目前 。 ah动画 已经成 为 网络动 画最 重要最 流 行 些 新 的特 性 部分 或者 全 部在 A t n cit fs l ci S r 脚本 层实 现 。 o p 的一 种格式 因此 研究 S WF动 画文 件格 式对 实现 f s 从 S 9开始 , S使用 了新 的虚 拟机 。S l h a WF A WF文件 由文 动 画文件 的解析 具有 重要 的意 义 本 文介 绍 了 S WF文 件 头 和 T g 签组成 ,WF文件格 式如 图 2所 示 。 a标 S 件 的组 成 。 件 头 的解 析 和 T g解 析 。 文 a
SWF文件结构大解剖
SWF文件结构大解剖Flash各种实例剖析我们都看过不少,不过你有没有想过swf文件内部到底是怎样的结构呢?不少闪客都想制作自己的Flash播放器,除了对控件的掌握和使用,更需要我们对swf文件的结构有深入的了解。
于是我用WinHex分别打开一个swf文件和由它生成的exe文件,经过仔细分析对比后,我不仅发现了swf文件转变成exe可执行文件的秘密,并且将Flash自带播放器具备而控件却无法实现的那些功能的谜底也同时解开了。
既然要“解剖”swf文件我们就要有“解剖”工具,我使用的是WinHex 9.2,你也可以用其它的二进制编辑器来查看。
一、swf文件结构和信息左侧“偏移量”一格代表一个字节,相同或相关功能的字节用同一种背景色表示。
偏移量用十进制数表示,每个字节的值均用十六进制数表示。
注:因长宽控制码所占字节数不确定,故其后的偏移量无法用具体数字来表示,改用N1、N2、N3等符号。
以上表格中所展示的是swf文件的结构,通过它你就能很清楚地明白哪部分对你编程有用,哪部分可以解决长期困绕的你的问题,怎么样?是不是开始偷着乐了?别着急,继续看更精彩的还在后面呢!二、swf文件中记录影片宽、高的方式前面表中第八个字节“影片宽高数据控制码”指的是下表中控制码一栏中的数字。
第九个字节至第N个字节“影片的宽度与高度数据存放区”指的是下表中控制码右边的那一行数字。
由于控制码的不同,宽度与高度的数据存放区的字节长度也不同。
下表中将控制码所在的字节分为两部分(高四位和低四位)。
高低位不同的组合决定了数据区占用字节数以及不同的高度算法。
相应的控制码后的蓝色条表示数据区所占用的字节。
五星代表有效数据(注意每个五星只占半个字节),其中前面几个连续的五星对应的数据记录了高度值,后面几个连续的五星对应的数据记录了宽度值。
将连续的五星所在位置的数(十六进制)组合起来,得到四位或六位的十六进制数,将此数转换成十进制数,白色五星得到的数除以10就是影片宽度数值,红色五星得到的数除以40就是影片高度数值。
swf文件的数据结构以及转为exe或从exe中剥离出swf的源代码
swf文件的数据结构以及转为exe或从exe中剥离出swf的源代码SWF文件是由一个文件头,以及一系列的标签组成的。
标签类型有两种:定义型标签和控制型标签。
定义型标签把所有物体定义成一个个角色,这些角色存在字典里面。
控制型标签操作这些角色,并且控制影片的流程。
swf 的长度单位使用twips(缇),1像素=20缇,这样,分数的像素可以使用整数的缇表示。
swf 的字符串是以00结束的byte序列,采用utf-8编码。
下面介绍swf文件的数据结构。
一、文件头文件头的结构见表1。
表1:SWF文件头---------------------------------------------------------------------------字段字节数说明---------------------------------------------------------------------------标识符 3 “FWS”或“CWS”的ascii码版本号 1 版本,例如:1表示swf1,6表示swf6文件长度 4 长整形,文件的字节数,低位在前帧大小RECT结构SWF场景的大小,单位为twip(缇,1缇=1/20像素,与VB不同)帧速度 2 以8.8表示的浮点数(也有文章说这是一个整形数),默认=000C帧数 2 整形,影片总帧数,低位在前---------------------------------------------------------------------------说明:1.文件头以标识符开始,不是“FWS”就是“CWS”。
FWS表示该文件未压缩;CWS 表示文件从 RECT 字段开始(第 9 个字节开始)至文件结尾的所有内容,都是使用开放标准 ZLIB 压缩过的(CWS 是在 SWF6 以后才被使用的。
对其解压缩可以使用 zlib1.dll 中提供的uncompress)。
swf_file_format_spec_v9(中文翻译)
闪刀浪子
SWF9 文件格式规范 介绍..................................................................................................................................................... 2 SWF 文件格式规范....................................................................................................................2 SWF 文件头................................................................................................................................3 SWF 文件结构............................................................................................................................4 标签格式..................................................................................................................................... 5 定义型标签和控制型标签.......................................................................
SWF矢量动画解析框架设计
SWF矢量动画解析框架设计
倪应华;金炳尧
【期刊名称】《计算机系统应用》
【年(卷),期】2010(019)003
【摘要】SWF是一种网络交互矢量图形动画格式.从介绍SWF动画文件结构入手,设计了SWF文件的解析框架.探讨了SWF解析流程中的两个重要环节:SWF文件头解析和Tag解析,在此基础上设计SWF的解析程序实现SWF动画环境信息、动画元素信息以及控制信息的获取.
【总页数】5页(P202-205,165)
【作者】倪应华;金炳尧
【作者单位】浙江师范大学教育信息技术研究所,浙江金华321004;浙江师范大学教育信息技术研究所,浙江金华321004
【正文语种】中文
【相关文献】
1.SWF动画文件解析器设计与实现 [J], 鲁云飞;何明华;黄婷婷;许海涛
2.网络矢量图形SWF与SVG的比较分析 [J], 万明民;顾景文
3.PPT中,SWF动画无法播放的解决方法 [J], 翁永平
4.基于MFC的SWF动画文件解析设计 [J], 鲁云飞;何明华
5.浅析SWF动画制作软件及技巧 [J], 张红艳
因版权原因,仅展示原文概要,查看原文内容请购买。
flash工作原理
flash工作原理Flash是一种常用的多媒体技术,广泛应用于网页设计、游戏开发、动画制作等领域。
本文将介绍Flash的工作原理,从整体架构到具体实现细节,以帮助读者更好地理解Flash的运行机制。
我们来了解Flash的整体架构。
Flash由两个核心组件组成:Flash Player和Flash文件。
Flash Player是一个独立的应用程序,用于在用户的计算机上播放Flash文件。
Flash文件则是一种特殊的文件格式,其中包含了用于展示动画、音频和视频等多媒体内容的代码和资源。
当用户在浏览器中打开一个包含Flash内容的网页时,浏览器会加载Flash Player,并将Flash文件传递给Flash Player进行处理。
Flash Player会解析Flash文件中的代码,将其转换为可视化的内容,并在用户的屏幕上显示出来。
接下来,我们详细介绍Flash文件的结构和工作原理。
一个Flash 文件通常由多个元素组成,包括舞台、场景、图层、时间轴和动画对象等。
舞台是Flash文件的主要区域,用于展示内容。
场景则是舞台的一个子区域,用于划分不同的内容区块。
图层用于分层管理不同元素,使其可以在时间轴上独立操作。
时间轴是Flash文件的核心控制区域,用于定义和控制动画的播放顺序和时间。
动画对象则是Flash文件中的可视化元素,如图片、形状和文本等。
Flash文件的工作原理是基于时间轴的概念。
时间轴上的每一帧都代表了一个时间单位,Flash Player会按照时间轴上的帧顺序依次播放动画。
在每一帧中,Flash Player会根据代码和资源定义,计算并渲染当前帧的内容。
这意味着动画对象的位置、大小、颜色等属性可以在不同帧上进行变化,从而实现动画效果。
除了时间轴上的帧动画,Flash还支持基于代码的动画控制。
开发者可以使用ActionScript语言编写代码,通过控制动画对象的属性和行为,实现更加复杂的动画效果。
Flash(Swf)文件结构说明
SWF文件头:所有SWF文件头都具有如下内容(格式定义见第三章基本数据格式):文件开头包含0x46,0x47,0x53(“FWS”)或者0x46,0x57,0x43(“CWS”)三个字节大小的域。
FWS标记表示无压缩的SWF格式文件;CWS表示在使用标准的ZLIB压缩完8个字节长度FileLength域后的域。
数据格式使用1950到1952通用标准文档的ZLIB库进行描述。
只有在SWF6.0以后版本才允许进行CWS文件压缩。
然后是一个字节的版本域。
版本域不是ASCII字符而是一个8位的数字。
例如:SWF4.0版本的版本字节是0x04,而不是ASCII字符‘4’(0x35)。
在文件头中文件长度域包含了SWF文件的总长度。
如果是无压缩的SWF(FWS域)文件,文件长度域储存文件的大小。
如果是压缩的SWF文件,文件长度域存储压缩后的文件大小,这样一般不用计算文件的大小。
如果无压缩有效,则能够进行更有效的压缩处理。
FrameSize(帧大小)域定义了动画的宽度和高度。
并以RECT格式存储,也就是它的大小依照需要的字节大小进行改变。
X 和Y 坐标一直保持为0;最大坐标值用来定义动画的宽度和高度。
(见使用字值)。
FrameRate (帧速)表示每秒帧的播放速度。
这个速度不是在SWF 文件中流声音数据的速度或运行在低速率CPU 上的速度。
FrameCount (帧数)指SWF 动画的总帧数。
SWF 文件结构:下面的SWF 文件头由几个连续的标签(Tag)数据块组成。
所有的标签(Tag)都是一个格式,因此分析一个SWF 文件不用去了解这些数据块。
数据块中的数据指向它内部的数据,但不能指向其他数据块内部的数据。
这样便于使用工具对SWF 文件进行增加、删除、修改标签(Tag)。
标签(Tag)格式:每个标签(Tag)都包含标签(Tag)类型和长度。
有两种标签(Tag)头格式,长类型和短类型。
短标签(Tag)用于标识小于62字节的数据。
关于SWF那个著名的漏洞-电脑资料
关于SWF那个著名的漏洞-电脑资料作者:zodiacsoft来源:天鹅糊&&乌鸦酱[Toooooooooooooooooold]也就是CVE-2007-0071,flash9x.ocx存在问题,版本一直影响到9.0.115,。
漏洞本身很简单,Dowd的思考方向没有脱离大众,但关键在于相当牛逼的一系列利用技巧。
具体的细节Dowd写了一篇很棒的paper,估计很多人看了,也有很多人做了。
文章我仔细拜读了一次,但出于某些原因,没有去动手做出最后的成品,以后也不打算做,这个东西不是手把手说怎么触发利用的,而是一些关于那篇文章的勘误和另一些周边小问题的补充。
第一个障碍是swf文件格式,这个大概会花费你两到三个小时的时间。
推荐下载一个Sothink SWF Decomplier,当然最好还要一个Flash CS3。
参考文献当然是Adobe自己公开的SWF文件格式pdf。
同很多文件格式一样,SWF由头和一系列的块组成。
SWF又分压缩和非压缩两种,但两者都保留了基本的头块,压缩方式是zlib,可以用标准的zlib来解压,压缩的SWF先处理一下比较好(或者导出的时候选择非压缩方式),这样原始的数据看起来会方便些。
块格式有各种各样的标示和数据,大多数情况下标示用6个字节,后4个字节表示长度,有时候为了节约,当块长在63字节以内的时候也用两个字节来表示标示和长度,这个有点麻烦,需要计算一下。
还有一种变长的数字表示形式,最长用5个字节来表示一个32位整型,也是为了节约,这个也有点麻烦,手算肯定麻烦,还是要写个程序自己算。
过了文件格式解析这一关,大概也写出一个能够parse各个块的程序了,最好能拆开各块分成文件,然后能组装起来,后面手工编辑方便很多。
第二个障碍是ActionScript,这个地方要花多少时间就难说了。
参考文件当然是Adobe自己的pdf,不过也就是拿来当个手册用,只要记住0×62 0×63 0×47等字节码的功能就可以了。
SWF文件结构研究
SWF文件结构这里所讲的FLASH的文件结构不是指文件的存储格式结构,而是指FLASH文件特有的运行结构。
了解它对做 好FLASH会有一定的帮助。
FLASH 作为一个动画制作工具,其最终成品是以.SWF文件表现的,一个复杂的SWF文件,无论从时间还是空间范围都是由一定结构组成的,组成时间顺序的最基本单 位是帧,而组成空间范围的基本单位是物体对象。
FLASH文件结构按时间顺序和空间范围可分为顺序结构和层叠结构两类,下面我们进一步分析。
2.顺序结构及应用如前述,顺序结构的基本单位是帧,由无数个顺序帧构成了场景,由无数个场景构成了一个SWF文件。
在物理上第一个帧与下一个帧是连续的,第一个场景与下一个场景也是连续的,同一时间点上的帧如同一幅图,连续时间内的多个帧构成了由多幅图形成的画面,把 这些多画面进行顺序播放,就形成了动画。
(变形动画和移动动画只不过是把中间的过渡帧交由FLASH自动处理)如果不施加Actions,FLASH的运 行按顺序结构依次进行,同一时间点上的对象同时出现,一个场景播完后紧接着播第二个场景,直至到最后一个场景的最后一帧。
施加了Actions后,则按 Actions指令进行转向,指令作用结束又按一定的时间顺序依次运行播放。
帧是物体对象的载体,场景是物体对象的载体集合。
在实际应用中,可以利用顺序结构来安排物体对象出场的先后、出场时间的长短(帧越占得多,时间占得越长);把相对类同的主题设成一个场景则便于制作和调试(检测功能中有 检测电影 和 检测场景 之分,前者播放的是整个影片,后者播放的是当前一个场景)。
可见,顺序结构主要与播放的时间顺序和时间长短有关。
3.层叠结构及应用层叠结构表现在空间范围上,最基本的单位是画面物体,多个画面物体可以同处一帧,同一帧上的画面物体如果是符号的话(严格说应该称为例子或实例)存在着前后叠放的关系,后放上的符号总是处于前面并把先放上的符号遮住,要改变这种先后叠放的关系,可以选中符号后用Ctrl+上下箭头键进行。
Flash文件格式
The FrameCount is the total number of frames in this SWF movie.
帧数表示SWFLeabharlann 片总的帧数目.SWF File Structure
tags, by themselves, do not cause anything to be rendered.
Control TagsThese tags create and manipulate renderedinstancesof characters in the
dictionary, and control the flow of the movie.
point to offsets within the block, but can never point to an offset in another block. This enables
tags to be removed, inserted, or modified by tools that process a SWF file.
members define the width and height (see Using Bit Values).
帧大小字段表示影片的宽度和高度.它存在一个RECT结构中,表示它的大小可以根据坐标(四个点的坐标)数值的变化而变化.文件大小RECT通常是这样的形式:Xmin和Ymin成员都为0;Xmax和Ymax成员声明宽度和高度.(参考Using Bit Values一节)
any tag size up to 4GB, far larger than is presently practical.
swf文件格式标准概述
所有的标签(Tag)都使用公用的格式,所以程序在分析SWF
文件的时候都可以跳过一些不明确的数据块。(File Attributes 标签在SWF8之后才需要。)
2012-6-1
杭州斯凯网络科技有限公司
5
2.SWF文件格式
SWF文件结构图:
2012-6-1
杭州斯凯网络科技有限公司
6
2.SWF文件格式
类型中U表示无符号,I表示整型。下面的UI8表示占8位二 进制的无符号整型。
2012-6-1 杭州斯凯网络科技有限公司 7
2.SWF文件格式
文件头都是由三个字节开始的0x46,0x57,0x53(FWS); 或者0x43,0x57,0x53(CWS)。FWS表示文件没有压缩,CWS 表示第8个字节后面是经过ZLIB开放标准压缩的(文件长度字 段后面)。SWF6之后的版本才开始使用压缩。 版本号占一个字节紧跟在标志之后。版本数字不是一个 ASCII字符而是一个8位的数字。例如SWF4,版本号字节为0x04, 而不是ASCII字符“4”(0x35)。 文件长度字段记录SWF文件的总长度,包括文件头。对于 未压缩的SWF文件(标志位FWS),文件长度字段的数值跟该文件 长度一致。而对于压缩的SWF文件(标志为CWS),文件长度字 段的长度表示第8个字节之后的数据解压缩之后的长度。
义图形)标签(Tag)利用其他的字符内容来定义他们自己的内
容。Define Text(定义文字)标签(Tag)能够通过字体字符 ID中的内容来定义文本的字体。 下面的图表示出一个典型的定义标签(Tag)、字典 (Dictionary)和控制标签(Tag)间复杂交互作用的例子。
2012-6-1 杭州斯凯网络科技有限公司 14
2012-6-1 杭州斯凯网络科技有限公司 17
