HTML canvas addColorStop() 方法

HTML canvas 参考手册 HTML canvas 参考手册

定义一个从黑到白的渐变,作为矩形的填充样式:

<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
您的浏览器不支持 HTML5 canvas 标签。
</canvas>
<script>
  var c = document.getElementById("myCanvas");
  var ctx = c.getContext("2d");
  var grd = ctx.createLinearGradient(0, 0, 170, 0);
  grd.addColorStop(0, "black");
  grd.addColorStop(1, "white");
  ctx.fillStyle = grd;
  ctx.fillRect(20, 20, 150, 100);
</script>

尝试一下 »


浏览器支持

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Internet Explorer 9、Firefox、Opera、Chrome 和 Safari 支持 addColorStop() 方法。

注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。


定义和用法

addColorStop() 方法规定渐变对象中的颜色和位置。

addColorStop() 方法与 createLinearGradient()createRadialGradient() 一起使用。

注意:您可以多次调用 addColorStop() 方法来改变渐变。如果您不对渐变对象使用该方法,那么渐变将不可见。为了获得可见的渐变,您需要创建至少一个色标。

JavaScript 语法: gradient.addColorStop(stop,color);

参数值

参数 描述
stop 介于 0.0 与 1.0 之间的值,表示渐变中开始与结束之间的位置。
color stop 位置显示的 CSS 颜色值

更多实例

通过多个 addColorStop() 方法来定义渐变:

<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
您的浏览器不支持 HTML5 canvas 标签。
</canvas>
<script>
  var c = document.getElementById("myCanvas");
  var ctx = c.getContext("2d");
  var grd = ctx.createLinearGradient(0, 0, 170, 0);
  grd.addColorStop(0, "black");
  grd.addColorStop("0.3", "magenta");
  grd.addColorStop("0.5", "blue");
  grd.addColorStop("0.6", "green");
  grd.addColorStop("0.8", "yellow");
  grd.addColorStop(1, "red");
  ctx.fillStyle = grd;
  ctx.fillRect(20, 20, 150, 100);
</script>

尝试一下 »


HTML canvas 参考手册 HTML canvas 参考手册