如何使用Easel.js在Flash CC中应用alphaMaskFilter?

时间:2016-01-26 15:41:48

标签: mask alpha createjs easeljs flash-cc

我正在使用Flash CC在画布文档中工作,并在舞台mask_mc(带有alpha渐变的movieclip)和徽标上添加以下标记的moveclips。目标是在徽标上创造一种光泽。

var mask_mc = this.mask_mc; 
mask_mc.cache(0, 0, 232, 196);

var logo = this.logo;
logo.cache(0, 0, 271, 40);

logo.filters = [
new createjs.AlphaMaskFilter(mask_mc.cacheCanvas)
];

我要做的就是模仿使用AS3做的alpha渐变掩码,但不能使用上面的代码:

//Original AS3 code
mask_mc.cacheAsBitmap = true;
logo.cacheAsBitmap = true;
logo.mask = mask_mc;

谢谢!

1 个答案:

答案 0 :(得分:1)

你必须在应用过滤器之后缓存(或updateCache)

var logo = this.logo;
logo.filters = [
    new createjs.AlphaMaskFilter(mask_mc.cacheCanvas)
];
logo.cache(0, 0, 271, 40);

您的第二个示例将无效,因为mask属性需要Shape,并且无法使用canvas /缓存。