我想使用循环路径剪辑组,但该组的clipFunc似乎没有执行,有关如何使用clipFunc属性的文档有点不稳定。
Here is a jsfiddle我当前的尝试。
以下是相关代码:
var stage = new Kinetic.Stage({
container: 'container',
width: 500,
height: 500
});
var layer = new Kinetic.Layer();
var group = new Kinetic.Group({
clipFunc: function(canvas) {
var context = canvas.getContext();
context.beginPath();
context.arc(250, 250, 50, 0, 2 * Math.PI, false);
context.clip();
}
});
var rect = new Kinetic.Rect({
x: 150,
y: 225,
width: 200,
height: 200,
fill: 'blue',
stroke: 'black',
strokeWidth: 2
});
group.add(rect);
layer.add(group);
stage.add(layer);
目前,如果我在clipFunc函数中设置了一个断点,那么它永远不会被击中。
答案 0 :(得分:3)
删除了对clipFunc的支持,转而使用剪辑,剪辑只是一个矩形剪辑区域。如果您想模拟圆形剪辑,可以使用toImage()将组转换为图像,然后绘制带有图像填充图案的圆。
clipFunc属性被删除,因为画布剪辑功能在非矩形剪裁区域中效果不佳,因为边缘是非抗锯齿的(这对于圆形路径尤其明显)