简单快捷   随心所欲   企业建站首选YulinCMS

Flash如何让MC边缘羽化
时间:2009年11月25日
来源:YulinCMS.com
阅读次数:

看看效果:

 


代码如下:

 

 

 

以下是引用片段:
import flash.filters.BlurFilter; 
function feather(mc:MovieClip, degree:Number) { 
//参数分别为图片元件和羽化程度(范围为0-100,数字越小,羽化程度越大) 
degree = degree == undefined or degree<0 or degree>100 ? 90 : degree;//默认90 
var depth:Number = getNextHighestDepth(); 
var blurMask:MovieClip = createEmptyMovieClip("blurMask"+depth, depth); 
with (blurMask) { 
  beginFill(0); 
  lineTo(mc._width, 0); 
  lineTo(mc._width, mc._height); 
  lineTo(0, mc._height); 

//这里画了一黑色的矩形块,大小与图片一样 
var scale:Number = degree; 
//设置模糊Mask图的尺寸 
blurMask._xscale = blurMask._yscale=scale; 
//是这张模糊Mask图要稍微比图片尺寸小一点 
blurMask._x = mc._x+(mc._width-blurMask._width)/2; 
blurMask._y = mc._y+(mc._height-blurMask._height)/2; 
//设置模糊Mask图移到图片中心对齐 
blurMask.filters = [new BlurFilter(blurMask._width*(100-scale)/100/2, blurMask._height*(100-scale)/100/2, 3)]; 
//这里前面两个参数表示横纵方向的模糊值(根据模糊Mask图的缩小尺寸来进行相应设置),第三个参数为品质,这里3表示高斯模糊 
mc.cacheAsBitmap = true; 
//这里设置图片的运行时位图缓存,是关键 
mc.setMask(blurMask); 

feather(M) 


Powered by YulinCMS