2014-12-03 40 views

回答

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> 

+0

我可以借你的好代码并添加一些合成以使您的文本变为渐变?http://jsfiddle.net/m1erickson/mt1x0wkL/ – markE 2014-12-03 04:41:32

+1

是的确定..................... – 2014-12-03 04:43:15

+0

this但是我忘了提到的东西,我需要渐变是水平的。对不起xD – 2014-12-03 05:12:26

0

尝试使用css。

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

我不能使用CSS :( – 2014-12-03 04:09:15

+0

只使用HTML5我认为这是不可能的,你必须使用一些脚本来创建渐变。 – 2014-12-03 04:14:19