| 网站首页 | 站内资讯 | 原创图书 | 图文教程 | 视频教程 | 课件下载 | 远程网校 | 留言建议 | 视频教程吧 | 官方微博 | 
>>  您现在的位置: Flash课件吧 >> 图文教程 >> 其他教程 >> 正文
专题栏目
畅销教材
征稿与合作
如果您是计算机方面的专家或对计算机在某方面的应用有一定心得,我们真诚地希望与您合作。请下载作者信息表并认真填写。在邮件主题中注明寻求合作字样,我们将尽快给您答复。
  • 下载作者信息表
  • 邮件联系我们
  • 相关文章
    推荐图书
    用ASV获得swf的源文件:fla
            ★★★   
    用ASV获得swf的源文件:fla
    >>  教程简介: 
    作者:老康 教程来源:网络 点击数: 更新时间:2008/4/1 12:01:00
    概述  
      当我们在网上欣赏到一个中意的flash作品,就想保存它,如果你是个flash制作者,你当然还想了解它的制作方法,或者想利用作品中的某些素材,借鉴其中的制作技巧。
      以前的做法是:把swf导入动画文档的场景,这时,时间线的显示方式是单层,并以“逐帧”序列表示动画流程,这种结果远远满足不了我们的需要。
      能得到动画作品最详尽的原始资料一直是我们的梦想,所以哪儿有fla下载,我们总是很感激,因为那意味着作者的在作品中花费的心血无偿地向我们赠与!
      但是大多数轻易得到的fla比较简单,而中意的swf很难有fla,有的甚至设置了读入保护。
      许多相关工具软件应运而生,帮助我们最大限度地得到原始资料,其中不少提到重建fla的可能和手段,但繁琐、复杂,效果差强人意,或者说根本行不通!
      flash动画的原始文件包含的信息是极其复杂的,从图形、图像属性、视频、声音、场景、图层、时间线、文本资源一直到AS模块以及动画流程的逻辑关系等等无不以其特有的方式保存在fla文档中,fla源文件与swf播放文件的文件量相差好几倍,是因为swf文件经过特殊压缩处理,仅保留最基本的“动画流”供受众观赏,其大量的信息丢失是免不了的,所以我曾经断言:
      swf永远回复不了fla!这好比鸡生了蛋,而要把蛋重新塞进鸡肚子那样不可思议!
      但是,我却忽略了一点:蛋的体积、外形虽然不能与鸡比,但蛋中完整保留了鸡的全部生命基因,在适当的条件,蛋还是能还原成鸡!
      对flash而言,swf中到底保留了多少“基因”?怎样还原?还原的精度如何?
      话又得说回来,swf远不如“鸡蛋”那样保留了鸡的全部“基因”,flash中的“蛋变鸡”也不是那么容易的!朋友们推荐的一款软件,能帮助我们解开这个迷,而且基本完好地实现了flash“蛋变鸡”的梦想,那就是“ASV”!
       ASV的JS脚本工作过程
       ASV的全称是“Action Script Viewer”,“动作脚本浏览器”,比起同类软件的什么“霸”、“战斧”、“王中王”、“终极”显得特别歉虚哦!目前版本为ASV4.01。
      你可从以下地址得到它:
      http://js.chinesejia.com/1/11/asv40.rar
      整个操作过程极其简单,但有的朋友可能会碰到困难(呵呵,我就是曾经百试不灵),是因为一些必要条件未注意,下面我们就来看看ASV提供给我们的一些帮助信息:
      先请你打开ASV,装入某个swf文件,执行菜单“file/Export Rebuild Data(JSFL)...”就完成了重构fla文件的素材!
      “JSFL”的意思是:“用javascript语言重建数据”,它的执行结果是在你指定的目录中生成这个swf的所有素材文件群,包括动画中可能用到的视频、音乐等其它媒体格式的各类文件。
      除此之外,该目录中还有二个文体文件:
      “readme.txt”及“rebuild.jsfl”,
      很有必要了解一下这二个文件!
      前者是根据swf作品拆解过程中的情况的说明,及一些注意事项;而后者就是脚本文件,里面是“蛋变鸡”的全过程脚本。
      现在我把它们简单分析一下,可以使你在以后操作中可能碰到的疑问迎刃而解。
      先看“readme.txt”,它的内容大概会这样:
      
       这个文件夹中的所有文件是为了帮助你重建fla源文件所用。
      为了达到这个目的,你必需拥有Flash MX 2004标准版或专业版。
    操作过程大致是:
      1、在MX2004中新建文档。
      2、用“导入到库”命令将本目录中的所有相关文件(swf、twf、mp3、flv)导入Flash“元件库”(老康按:flv-是视频格式)。
      3、用“另存为...”命令把该文档保存为 “rebuild.fla”文件。
      4、在文件夹中双击“rebuild.jsfl”脚本文件,JS程序就开始为你重建fla结构。
      说明:
      最初分解得到的素材swf是Flash5版本的;
      在重建过程中将创建一些额外的图层。

      再来看看“rebuild.jsfl”文件(可以用“写字板”打开),
      它分五个部分:
    一、环境参数
      原文档的面板设置情况;打开rebuild.fla文件(注意,这就是为什么一定要保存为“rebuild.fla”的原因,试着改为“沪上老康.fla”我看也行);设置必要变量:如时间线、库、数组等。
    二、影片属性
      尺寸、帧速率、底色等
    三、声音属性
      声音文件的压缩效果设置信息
    四、创建素材库
      就是分解后的各swf,有MC、元件名,及它们在库中的编号、索引号,在时间线中的位置参数,有多少素材swf就有多少库项目。
    五、创建时间轴
      根据上面的信息创建层、AS代码重新构造时间轴内容,这是JSFL最出色的部分,也是“蛋变鸡”的过程脚本,结合第一部分的变量,深入研读一下,很有趣哩。

      请注意,只有flash MX 2004能识别“jsfl”文件哦。
       如果你能肤浅地了解这两个文本文件,我想这个“蛋变鸡”的不可思议的浩大工程应该相当轻松了,而且整个过程的“透明度”大大增加哦!
      有两点应该补充的是:
    一、请将你的windows系统的“文件夹”设置为“使已知文件扩展名显示”,这可是个成功航道上的“暗礁”,天知道js语言竟然连win隐藏掉的扩展名会找不到,我前期操作失灵就是吃了这个亏哦!
    二、在把素材文件“导入到库时”,flash一次大约可导入100余个文件,过多会拒绝执行,这时你可批量导入,记住最后文件名,连续进行,万一重复导入,在对话框中选择“复盖”即可。
      说句题外话,如有兴趣,我们可以利用一下MX 2004的新功能,创建自己的JS文件,设置打开flash时的文档尺寸、帧速率、底色、库内容以及时间轴的一些特性,如同dos时代的“批处理(bat)”文件,说这个,是想让你对“jsfl”脚本文件消除神密感,使我们的“蛋变鸡”工程更有自主性及针对性。

    上面,我们已经大致介绍了ASV生成FLA文件的基本原理及过程,在进一步探讨ASV的还原特征前,我们有必要廓清一些模糊认识:
      尽管ASV为我们提供了如此强劲的回复能力,但从理论上说,swf真正向fla逆转是不可能的!
      其主要原因是:
       swf数据经过特殊压缩处理,大量必要的信息都被丢弃,这在上面已经阐述过,这好比我们可以享用“可口可乐”的色、香、 味,但我们不可能还原出色、香、味的诸多组成成份。
      再有,Macromedia公司出于他们的普及策略,公布了 SWF 文件的格式,便于第三方软件支持swf格式,而FLA文件的格式是他们的最高商业机密 ,重构fla文件的难度极大。
      ASV能为我们做的,已经达到极限,非ASV无能,而是根本没法做得更好!
      那么是不是可以把ASV回复fla的精确度打个百分比?
      我认为不可能,因为有的swf可以99%地回复(如单层单场景的逐帧动画),而有的几乎连10%也做不到(使用了“UI组件”或智能MC)!
    这取决于动画内容的结构、所包含元素的性质,以及动画组件逻辑关系的繁简。
      那么,其中有什么规律吗?
      ASV为我们做这些事时,当然有它的一套方式,掌握了一些规律,你可以把得到的rebuild.fla文件进一步改造精化,以资更接近“可口可乐” 的色、香、味!
      ASV简介
       下面,我们来看一下swf文件中到底保留了哪些信息。
      打开ASV,装入一个swf文件,最好装入你相当熟悉的swf,比如自己的作品,如此更容易甄别其信息的精度,如下图所示:


        我们发现,ASV用“标签页”方式管理swf信息,你可能会看到以下几组“标签页”:“时间线”、“帧”、“库”、“实例名”、“帧标签”、“AS代码”、“特殊标签”等等,而且,每个“标签页”中各包含不同的项目列表 ,每个元素各自拥有“属性”窗口。右图所显示的仅为“帧”标签窗口的情况。以上标签页是动态出现的,视所装入的swf内容而不同。请你化些时间,仔细地浏览一下ASV的信息库,我们可以得出以下几条认识:
      ·ASV已经从swf中获取了最高限度的信息,并且它的信息组织方式相当科学、细致、合理。更重要的还有ASV的拆解技术。你可与你拥有的同类软件作比较,要知道,将来进行重构时间线即“JSFL”时,就是根据信息的组织方式进行的。

      这也是各种swf拆解软件优与劣,强与弱的不同之处。
      ·从信息库中我们还发现,在swf文件中已经丢失了“时间轴”、“库”、“场景”等关键的信息!而它的“帧”信息保留得最完整,这是还 原fla时最根本的依据!多场景的动画在swf文件中被合并为单场景,并且是以“帧”连续表示的,一帧也没少!而“时间线”是ASV读入swf时 根据“帧”中包含的元素重新建立的。
      注意,这个“库”(Library),跟原fla中的“库”根本是两回事哦!很显然,ASV中的“库”内容是根据从swf读入数据时的顺序排列,并且依次重新命名为 Symbol x,后面标记着素材类型,以及在属性表内记录着全部信息,请你看看各symbol属性窗的“帧属性”,可相信我上面的话没错哦!原设计动画时的“元件库”其实在swf中已经荡然无存!

    [1] [2] [3] 下一页

      >> 教程录入:admin    责任编辑:admin 
  • 下一篇教程: 没有了
  • 上一篇教程: 没有了
  • 网友评论:(只显示最新8条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 管理登录 | 
    版权所有 课件吧 Copyright ◎2006 - 2013
    如涉及侵权行为请书面告之,本站将立即处理
    站长:cai8net  备案序号:豫ICP备13010258号