Я использую Konva.js для создания анимации на холсте. У меня есть формы круга, с заполнением изображения, и я хотел бы применить цветную накладку/фильтр к форме (RGBA).Как применить фильтр к фигуре с заполнением изображения в KonvaJS?
Это, как я создаю объект Shape:
var konvaObject = new Konva.Circle({
x: 100,
y: 100,
radius: 300,
stroke: this.color,
strokeWidth: 6,
fillPatternRepeat: 'no-repeat',
});
// load the image into the shape:
var imageObj = new Image();
imageObj.onload = function() {
konvaObject.fillPatternImage(imageObj);
konvaObject.draw();
}
imageObj.src = 'www.demo.com/anImageName.png';
демо: http://jsbin.com/winugimeme/edit?js,output
The Docs outline an RGBA filter, однако, насколько я могу сказать, что это может быть применен только к Konva.Image
элементов.
Есть ли способ переделать мой код выше, чтобы я мог применять фильтры к объекту фигуры/заполнению?
Я пробовал вышеуказанное и получил вышеупомянутую ошибку CORS. Есть ли способ обойти ограничение CORS ..? Я загружаю изображения из CDN. Я действительно не понимаю, почему это проблема CORS, когда я могу связать изображения с одного CDN и загрузить их в качестве тегов изображений. Почему манипулирование ими на холсте вызывает ошибку CORS? – Prefix
Вы можете попробовать этот трюк, чтобы он работал «imageObj.crossOrigin =« Anonymous »; – lavrton
http://jsbin.com/licusaxeqe/2/edit?js,output – lavrton