html5--5-13 渐变色
学习要点
- 掌握渐变色的绘制方法
渐变色绘制方法
- createLinearGradient() 创建线性渐变
- createLinearGradient(x1,y1,x2,y2)---颜色渐变的起始坐标和终点坐标
- addColorStop(位置,"颜色值")---0表示起点...插入点...1表示终点,配置颜色停止点
- createRadialGradient(x1,y1,r1,x2,y2,r2,) 创建放射状/环形的渐变
- ....
文字的绘制方法
- strokeText("文字",x,y,maxWith) 绘制(描边)空心文字
- fillText("文字",x,y,maxWith) 绘制实心
- 字体样式:font="大小 字体 ..."
矩形的绘制方法
- rect(x,y,w,h)创建一个矩形
- strokeRect(x,y,w,hx,y,w,h) 绘制矩形(无填充)
- fillRect(x,y,w,h) 绘制"被填充"的矩形
- stroke() 绘制已定义的路径
- fill()绘制一个实心的(带填充的图形)
Canvas的路径方法
- moveTo() 定义绘制路径的起点(在直线中就是定义直线的起点)
- lineTo() 添加一个新点,(在我们的直线案例中就是定义直线的终点,但是后边继续绘制的话,它就变成中间点)
- stroke() 绘制已定义的路径
- fill()绘制一个实心的(带填充的图形)
- beginPath() 用来创建新的路径
- closePath() 从当前点回到起始点的来封闭路径
- arc(x,y,r,开始角度,结束角度,true/false) :创建圆弧/曲线(用于创建圆形或部分圆)
绘制直线段流程:
- 在HTML5文档中添加canvas元素,并且设置的宽高和ID
- 在canvas元素中添加提示语句,让不支持canvas的浏览器能够显示友好的提示语句
- 添加script元素
- 获取画布/设置绘图绘图环境:此为固定语句,暂时记住、了解即可,后续课程还会继续讲解
- 指定线宽:lineWidth= 数值
- 指定颜色:strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
- 设定起点:moveTo(x坐标,y坐标)
- 设定终点:lineTo(x坐标,y坐标)
- 开始绘制:stroke()
绘制矩形流程:
- 在HTML5文档中添加canvas元素,并且设置的宽高和ID
- 在canvas元素中添加提示语句,让不支持canvas的浏览器能够显示友好的提示语句
- 添加script元素
- 获取画布/设置绘图绘图环境:此为固定语句,暂时记住、了解即可,后续课程还会继续讲解
- 绘制空心矩形
- 指定线宽:lineWidth= 数值
- 指定轮廓颜色:strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
- 设定矩形的基本参数:strokeRect(x,y;width,height)
- 绘制填充矩形
- 指定填充颜色:fillStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
- 设定矩形的基本参数:fillRect(x,y;width,height)
绘制圆
- 在HTML5文档中添加canvas元素,并且设置的宽高和ID
- 在canvas元素中添加提示语句
- 添加script元素
- 获取画布/设置绘图绘图环境
- 指定线宽:lineWidth= 数值
- 指定颜色:fill/strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
- 设定圆的基本参数:
- 圆心的坐标:x,y
- 圆的半径:数值
- 起始弧度和终止弧度:角度值1,角度值2
- 绘制方向:true(逆时针)/false(顺时针)
- 开始绘制:stroke()/fill()
实例
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>无标题文档</title> 6 </head> 7 8 <body> 9 </body> 10 </html><!DOCTYPE html> 11 <html lang="en"> 12 <head> 13 <meta charset="UTF-8"> 14 <title>Document</title> 15 <style type="text/css"> 16 canvas{background: #A9A9A0} 17 </style> 18 </head> 19 <body> 20 <canvas id="mycanvas" width="500px" height="300"> 21 您的浏览器暂不支持HTML5的canvas元素!! 22 </canvas> 23 <script type="text/javascript"> 24 //定义变量获取画布DOM 25 var canvas=document.getElementById("mycanvas"); 26 //设置绘画环境为2d 27 var context=canvas.getContext("2d"); 28 29 //渐变色 30 //1、设置渐变色 31 var gradient=context.createRadialGradient(50,150,5,470,150,100); 32 //添加渐变色中的颜色 33 gradient.addColorStop(0,"#000000"); 34 gradient.addColorStop(0.2,"#FF0000"); 35 gradient.addColorStop(0.4,"#00FF00"); 36 gradient.addColorStop(0.6,"#0000FF"); 37 gradient.addColorStop(0.8,"#FF00FF"); 38 gradient.addColorStop(1,"#FFFFFF"); 39 //2、用设置好的渐变色来填充我们的日常图形就好 40 context.fillStyle=gradient; 41 context.fillRect(50,50,400,230); 42 43 //给扇子加渐变色 44 </script> 45 46 <canvas id="mycanvas2" width="500px" height="300" > 47 您的浏览器暂不支持HTML5的canvas元素!! 48 </canvas> 49 <script type="text/javascript"> 50 //定义变量获取画布DOM 51 var canvas=document.getElementById("mycanvas2"); 52 //设置绘画环境为2d 53 var context=canvas.getContext("2d"); 54 55 //渐变色 56 //1、设置渐变色 57 var gradient=context.createRadialGradient(250,150,10,250,150,100); 58 //添加渐变色中的颜色 59 gradient.addColorStop(0,"#000000"); 60 gradient.addColorStop(0.2,"#FF0000"); 61 gradient.addColorStop(0.4,"#00FF00"); 62 gradient.addColorStop(0.6,"#0000FF"); 63 gradient.addColorStop(0.8,"#FF00FF"); 64 gradient.addColorStop(1,"#FFFFFF"); 65 //2、用设置好的渐变色来填充我们的日常图形就好 66 context.fillStyle=gradient; 67 context.arc(250,150,100,0,Math.PI*2); 68 context.fill(); 69 //给扇子加渐变色 70 </script> 71 </body> 72 </html>