我只想使用 rgba 来填充渐变对象。然而,屏幕上什么也没有出现,简单的 addcolorstop 工作,只是不适用于 rgba。
这有效:
var ctx = this.context;
var fillColor = ctx.createRadialGradient(100, 100, 10, 100, 100, 70);
fillColor.addColorStop(0.2, "green");
ctx.fillStyle = fillColor;
ctx.beginPath();
ctx.arc(obj.x, obj.y, obj.r, 0, 2 * Math.PI, true);
ctx.closePath();
ctx.fill();
这不会:
var ctx = this.context;
var fillColor = ctx.createRadialGradient(100, 100, 10, 100, 100, 70);
grad.addColorStop(0.0, 'rgba(0,0,0,1)');
grad.addColorStop(0.5, 'rgba(0,0,0,0)');
grad.addColorStop(1.0, 'rgba(0,0,0,1)');
ctx.fillStyle = fillColor;
ctx.beginPath();
ctx.arc(obj.x, obj.y, obj.r, 0, 2 * Math.PI, true);
ctx.closePath();
ctx.fill();