나는 혼란 스럽습니다. EaselJS의 AlphaMaskFilter를 사용할 수 없습니다. 내가 잘못하고 있다고 생각하지는 않지만 내가 기대하는 바를 보여주지 못한다. 당신이 Google 광고판에서 손전등을 가리키는 것처럼 보일 것입니다. http://jsfiddle.net/mLn8e/EaselJS AlphaMaskFilter 작동을 얻으려면
var stage = new createjs.Stage("c");
var mask = new createjs.Shape();
mask.graphics.beginRadialGradientFill(["rgba(255, 255, 255, 1)","rgba(255, 255, 255, 0)"], [0, 1], 0, 0, 0, 0, 0, 20).drawCircle(0, 0, 20);
mask.cache(-20, -20, 40, 40);
mask.x = 100;
mask.y = 100;
var bg = new createjs.Shape();
bg.graphics.beginFill("#000000").rect(0, 0, 400, 400);
stage.addEventListener("stagemousemove", function(e) {
mask.x = e.stageX;
mask.y = e.stageY;
stage.update();
});
stage.addChild(bg, mask);
stage.update();
var img = new Image();
img.src = "https://www.google.nl/intl/en_ALL/images/logos/images_logo_lg.gif";
img.onload = function (e) {
var bmp = new createjs.Bitmap(e.target);
bmp.x = 0;
bmp.y = 0;
var amf = new createjs.AlphaMaskFilter(mask.cacheCanvas);
bmp.filters = [amf];
stage.addChild(bmp);
stage.update();
};
가장 중요한 두 라인 드 VAR의 AMF있다 = ... 선과 bmp.filters = AMF]; 그 둘은 프로그램을 어 기고 있습니다.
미리 감사드립니다.
고마워요! 나는 항상 이런 종류의 일들에 빠지다. 내가 컴퓨터에 도착하자마자 즉시 시도 할 것이다! – bobismijnnaam
또한 비트 맵이 작동하려면 먼저 캐시해야합니다. GitHub의 examples 폴더에는 AlphaMaskFilter가 있으며 업데이트 된 문서에는 몇 가지 코드 샘플이 있습니다. http://www.createjs.com/Docs/EaselJS/classes/AlphaMaskFilter.html – Lanny