KineticJS - 使用梯度描边创建样条曲线

时间:2013-11-16 00:01:48

标签: javascript kineticjs spline

我试图用渐变而不是纯色来抚摸我的Kinetic Spline对象。但是,我的样条曲线变黑了。有什么想法吗?

这是我的代码:

var stage = new Kinetic.Stage({
    container: 'container',
    width: 578,
    height: 200
  });
var layer = new Kinetic.Layer(); 
var blueSpline = new Kinetic.Spline({
    points: [{
      x: 73,
      y: 160
    }, {
      x: 340,
      y: 23
    }, {
      x: 500,
      y: 109
    }, {
      x: 300,
      y: 109
    }],
    strokeWidth: 10,
    lineCap: 'round',
    tension: 1,
    fillLinearGradientStartPoint: [73, 160],
    fillLinearGradientEndPoint: [300, 109],
    fillLinearGradientColorStops: ['#ff0000', '#00ff00'],
    fillPriority: 'linear-gradient'
  });

  layer.add(blueSpline);
  stage.add(layer);

2 个答案:

答案 0 :(得分:2)

你可以试试这个:

var ctx = layer.getContext();
var grad = ctx.createLinearGradient(73, 160, 300, 109);
grad.addColorStop(0, '#ff0000');
grad.addColorStop(1, '#00ff00');

var blueSpline = new Kinetic.Spline({
...
stroke: grad,
...
});

这是一个例子: http://jsfiddle.net/qK6nq/

答案 1 :(得分:0)

KineticJS不支持渐变笔画 - 只支持渐变填充。