HTML5 / JavaScript Canvas文本渐变效果

时间:2014-12-03 03:56:21

标签: javascript html5 html5-canvas

是否可以使用 HTML5 / JavaScript 将渐变应用于画布内的文字?

<canvas id="myCanvas"> <p>Hello World!</p> </canvas>

2 个答案:

答案 0 :(得分:2)

<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
</canvas>

<script>

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");

ctx.font = "20px Georgia";
ctx.fillText("Hello World!", 10, 50);

ctx.font = "30px Verdana";
// Create gradient
var gradient = ctx.createLinearGradient(0, 0, c.width, 0);
gradient.addColorStop("0", "magenta");
gradient.addColorStop("0.5", "blue");
gradient.addColorStop("1.0", "red");
// Fill with gradient
ctx.fillStyle = gradient;
ctx.fillText("Hello World!", 10, 90);

</script>

答案 1 :(得分:0)

尝试使用css。

 p{
 font-size: 72px;
 background: -webkit-linear-gradient(#eee, #333);
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
  }