本帖最后由 网雨霏霏 于 2016-9-7 08:37 编辑
【问题来源】http://tieba.baidu.com/p/4769202838?pid=97407055872 【问题描述】 做好了的Flash怎么修改尺寸能让动画整体不变样? 在不影响原画面的情况下,修改舞台的高度,宽度(关键是层多,有引导有遮罩动画) 原舞台是1280*720,公司那边要改成178*64,以后应该还有这样的事,这该怎么办哪?????
最近访问本帖者列表:访问时间:2020-05-25 08:26 | |||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
本帖最后由 网雨霏霏 于 2016-9-7 10:04 编辑
【解决方案】 有两种方案:一是用代码方式,二是直接操作画面。两者各有优劣。 代码方式: 优点:操作简单,很快就可以搞定。并且可以原汁原味的保留原作品的效果,仅是修改了舞台的分辨率而已 缺点:需要额外多出一个swf文件充当外壳,用于加载原文件。如此一来就有两个swf文件 ------------------------------------------------------------------------------------------------------------------------------------------------ 直接操作方式: 优点:因为是直接操作原文件,修改后的文件仍然是只有一个swf文件 缺点:如果flashIDE的版本号低于flashCS5,会比较的耗费时间,而且可能无法保留原文件的一些信息 分楼层详述解决方法 | |
代码方式 本帖最后由 网雨霏霏 于 2016-9-7 09:12 编辑
flash规定,AS2的只能加载AS2的(或AS1的)不能加载AS3的 AS3的可以加载任意AS版本的 因为提问者没有给出AS的版本,而AS3与AS2的写法是不一样的,所以这里分情况讨论: 一、若原作品是AS2的 我也用AS2的加载它。【也可以用AS3的加载,本文暂不涉及】 新建一个AS2的flash文档,马上保存。保存到和原文件相同的目录内【假设原文件的名字是yuan.swf】 代码如下 var hxsfb:Number=178/1280 var zxsfb:Number=64/720 this.createEmptyMovieClip("mymc",1) loadMovie("yuan.swf",mymc) mymc._xscale=hxsfb*100 mymc._yscale=zxsfb*100 二、若原作品是AS3的 只能用AS3的加载它。新建一个AS3的flash文档,马上保存。保存到和原文件相同的目录内【假设原文件的名字是yuan.swf】 代码如下 var hxsfb:Number=178/1280 var zxsfb:Number=64/720 var ld:Loader=new Loader() ld.load(new URLRequest("yuan.swf")) ld.scaleX=hxsfb ld.scaleY=zxsfb addChild(ld) ========================================================================= 超级重要: 如果原作品是AS2的,且使用了下面的代码: _root 使用本楼的方法加载后,会出现问题【没有使用_root代码的话,没有问题】 此时,需要在原文件的第一帧加上下面的代码,问题才可以完美解决: this._lockroot=true | |
直接操作方式: 本帖最后由 网雨霏霏 于 2016-9-7 10:13 编辑
也有两种方案,但取决于flashIDE的版本号 如果你的flashIDE是flashCS5(不含CS5)之前的版本,只能使用方案一 如果你的flashIDE是flashCS5(含CS5)之后的版本,两个方案都可以使用。 下面分别陈述两种方案 方案一 【1】在时间轴的任意一帧上点右键,选择“选择所有帧”,马上进行第二步 【2】选择“剪切帧” 然后选择“删除帧” 【3】单击图层面板的最上面的图层,按住Shift键不放,单击最后一个图层,然后单击“删除”按钮 【4】在时间轴第一帧按F6键 【5】按Ctrl+F8键插入一个元件,设为“影片剪辑”,“确定”后会自动进入其内部,右键单击第一帧,选择“粘贴帧” 【6】进入主场景,从库面板内将刚才的影片剪辑拖到舞台上。使用“任意变形”工具调整影片剪辑的大小,或者直接在属性面板内指定宽高 如上6步即可搞定。实测会出现如下的问题:图层的帧数无法与原文件保持一致,每一层的帧数都一样了,会导致一些非常意外的情况,需要我们再手工一一修改 ================================================================================= 方案二 【1】单击图层面板的最上面的图层,按住Shift键不放,单击最后一个图层,然后在任意一个图层上右键单击,选择“剪切图层” 【2】按Ctrl+F8键插入一个元件,设为“影片剪辑”,“确定”后会自动进入其内部,右键单击图层 1,选择“粘贴图层” 【3】进入主场景,从库面板内将刚才的影片剪辑拖到舞台上。使用“任意变形”工具调整影片剪辑的大小,或者直接在属性面板内指定宽高 如上3步即可搞定。实测可以非常完美的保留原文件的效果,推荐用这种方案。但是本方案要求你的flashIDE版本号至少是flashCS5,如果你的flashIDE版本号小于或等于flashCS4,将无法使用本方案 | |