canvas特效代码详解(3)

 canvas是一个就基于像素的画图h5元素。

 利用canvas方法绘制渐变图像

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title></title>
 6         <style type="text/css">
 7             canvas{
 8                 border: 1px solid #000;
 9                 margin: 100px 400px;
10             }
11         </style>
12     </head>
13     <body>
14         <canvas id="canvas" width="400" height="400"></canvas>
15         <script type="text/javascript">
16             var canvas = document.getElementById("canvas");
17             var context = canvas.getContext("2d");
18 //            调用createRadialGradient()方法创建径向渐变
19             var radialGradient = context.createRadialGradient(200,200,20,200,200,100);
20 //            使用addColorStop()方法来指定色标
21             radialGradient.addColorStop(0.0,'red');
22             radialGradient.addColorStop(0.2,'green');
23             radialGradient.addColorStop(0.4,'yellow');
24             radialGradient.addColorStop(0.6,'black');
25             radialGradient.addColorStop(0.8,'greenyellow');
26             radialGradient.addColorStop(0.9,'pink');
27 //            绘制渐变矩形
28             context.fillStyle = radialGradient;
29             context.fillRect(100,100,200,200);
30         </script>
31     </body>
32 </html>

效果如下:

利用canvas方法设置不同颜色的字体

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title></title>
 6         <style type="text/css">
 7             canvas{
 8                 border: 1px solid #000;
 9             }
10         </style>
11     </head>
12     <body>
13         <canvas id="canvas" width="500" height="500"></canvas>
14         <script type="text/javascript">
15             var canvas = document.getElementById("canvas");
16             context = canvas.getContext("2d");            
17             gradient = context.createLinearGradient(0,0,canvas.width,0);            
18             gradient.addColorStop('0','black');
19             gradient.addColorStop('0.3','red');
20             gradient.addColorStop('0.6','yellow');
21             gradient.addColorStop('1','green');
22             context.font = '40px yahei';
23             context.fillStyle = gradient;
24             context.fillText('hello world!',100,100);
25         </script>        
26     </body>
27 </html>

效果图

posted @ 2017-10-25 20:27  flying-code  阅读(220)  评论(0编辑  收藏  举报