flash 播放图片改进
网上流行的图片幻灯片效果播放插件pixviewer.swf相信很多人都在用,但因为有很多问题无法解决让人很苦恼。 比如最多只支持6个图片,这个我可以忍;比如只支持jpg格式的图片,我也可以忍;比如图片大小完全适应显示框,图片拉伸变形,说是实在的这个我本可以忍,但被扭曲形象的领导没法忍。他拍案而起,怒火中烧,所以我们干了好几个月的辛苦,毁在了一个播放插件上。 如果你也有同样的痛苦经历,那你幸福了,因为我忍不过领导这关,所以我千辛万苦的找到源文件,并把图片变形问题改进了,使大于显示框大小的图片锁定纵横比缩放。 源文件下载地址 http://files.cnblogs.com/jesse/focus.rar?(未修改) 找到 focus_ok.fla文件 打开 Action Layer: 帧1? 修改如下方法 function preloader1(target) { var _l1 = target; mc = _l1.pic; var _l2 = int(mc.getBytesLoaded() / mc.getBytesTotal() * 100); if (_l2 >= 100) { delete _l1["onEnterFrame"]; // 锁定图片纵横比,居中显示图片 var scale = 0.0; if(_l1._width > borderwidth-2) { scale = _l1._width / (borderwidth-2); _l1._width = borderwidth-2; _l1._height = _l1._height / scale; } if(_l1._height > borderheight-2) { scale = _l1._height / (borderheight-2); _l1._width = _l1._width / scale; _l1._height = borderheight-2; } _l1._x = (borderwdith - _l1._width) / 2 + 1; _l1._y = (-1 * _l1._height / 2) - textheight/2 + 1; //_l1._width = borderwidth; //_l1._height = borderheight; } // end if } // End of the function
function preloader(target,flagSwfPre) { var _l1 = target; var _l3 = _root; mc = _l1.pic; var _l2 = int(mc.getBytesLoaded()/mc.getBytesTotal()*100); _l3.loader.gotoAndStop(_l2); if (_l2>=100) { delete _l1["onEnterFrame"]; setProperty("_root.buttonbanner.num"+(_l1.getDepth()+1),_alpha,"100"); if (_l1 == _level0.image0) { mc._alpha = 100; _l3.buttonbanner.num1.gotoAndStop(3); _l3.current_pic = 0; _l3.timer.gotoAndPlay(2); } // end if // 锁定图片纵横比,居中显示图片 var scale = 0.0; if (_l1._width>borderwidth-2) { scale = _l1._width/(borderwidth-2); _l1._width = borderwidth-2; _l1._height = _l1._height/scale; } if (_l1._height>borderheight-2) { scale = _l1._height/(borderheight-2); _l1._width = _l1._width/scale; _l1._height = borderheight-2; } _l1._x = (borderwdith-_l1._width)/2+1; _l1._y = (-1*_l1._height/2)-textheight/2+1; //_l1._width = borderwidth; //_l1._height = borderheight; if (flagSwfPre == 1) { mc.stop(); } // end if } // end if }// End of the function
还有很多问题因为我对action script 不懂,所以没有修改(可以继续忍下去),希望忍无可忍的兄弟将你修改好的无须再忍的代码分享一下! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |