<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<canvas id="canvas" width="400px" height="400px"></canvas>
</body>
<script type="text/javascript">
var canvas=document.getElementById('canvas');
if(canvas==null){
return false;
}
var context=canvas.getContext('2d');
// context.fillRect(0,0,100,100);
// context.strokeRect(120,0,100,100);
//
// context.fillStyle="red";
// context.strokeStyle="aqua";
// context.fillRect(0,120,100,100);
// context.strokeRect(120,120,100,100);
//
// context.fillStyle="rgba(255,0,0,0.2)";
// context.strokeStyle="rgba(255,0,0,0.2)";
// context.fillRect(240,0,100,100);
// context.strokeRect(240,120,100,100);
// context.clearRect(50,50,240,120);
//context.arc(x,y,radius.atarAngle,anticlock,anticlockwise)
// x:圆心的x坐标
// y:圆心的y坐标
// straAngle:开始角度
// endAngle:结束角度
// anticlockwise:是否逆时针(true)为逆时针,(false)为顺时针
//
// context.beginPath();
// context.arc(200,150,100,0,Math.PI*2,false);
// context.closePath();
// context.fillStyle="orangered";
// context.fill();
// var n=0;
// context.beginPath();
// context.arc(100,150,50,0,Math.PI/2,false);
// context.fillStyle="orchid";
// context.fill();
// context.strokeStyle="chartreuse";
// context.closePath();
// context.stroke();
//
// context.beginPath();
// context.arc(300,150,50,0,Math.PI/2,false);
// context.fillStyle="orchid";
// context.fill();
// context.strokeStyle="chartreuse";
// context.closePath();
// context.stroke();
// 对于线段的绘制
// x:x坐标
// y:y坐标
// 每次画线都从moveTo的点到lineTo的点,
// 如果没有moveTo那么第一次lineTo的效果和moveTo一样,
// 每次lineTo后如果没有moveTo,那么下次lineTo的开始点为前一次lineTo的结束点
//
// context.beginPath();
// context.strokeStyle = "rgb(250,0,0)";
// context.fillStyle = "rgb(250,0,0)"
// //实验证明第一次lineTo的时候和moveTo功能一样
// context.lineTo(100, 100);
// //之后的lineTo会以上次lineTo的节点为开始
// context.lineTo(200, 200);
// context.lineTo(200, 100);
// context.moveTo(200, 50);
// context.lineTo(100,50);
// context.stroke();
//菊花图
// context.fillStyle="cornsilk";
// context.fillRect(0,0,400,300);
// var n=0;
// var dx=150;
// var dy=150;
// var s=100;
// context.beginPath();
// context.fillStyle="darkorange";
// context.strokeStyle="black";
// var x=Math.sin(0);
// var y=Math.cos(0);
// var dig=Math.PI/1511;
// for (var i=0;i<30;i++) {
// var x=Math.sin(idig);
// var y=Math.cos(idig);
// context.lineTo(dx+xs,dy+y*s)
// }
// context.closePath();
// context.fill();
// context.stroke();
//绘制贝塞尔曲线context.bezierCurveTo(cp1x,cp1y,cp2x,cp2y,x,y)
//绘制二次样条曲线 context.quadraticCurveTo(qcpx,qcpy,qx,qy)
// cp1x:第一个控制点x坐标
// cp1y:第一个控制点y坐标
// cp2x:第二个控制点x坐标
// cp2y:第二个控制点y坐标
// x:终点x坐标
// y:终点y坐标
//
// qcpx:二次样条曲线控制点x坐标
// qcpy:二次样条曲线控制点y坐标
// qx:二次样条曲线终点x坐标
// qy:二次样条曲线终点y坐标
// context.moveTo(50,50);
// context.bezierCurveTo(50,50,150,50,150,150);
// context.stroke();
// context.quadraticCurveTo(150,250,250,250);
// context.stroke();
// context.fillStyle="chocolate";
// context.fillRect(0,0,400,300);
// var n=0;
// var dx=150;
// var dy=150;
// var s=100;
// context.beginPath();
// context.fillStyle="cadetblue";
// var x=Math.sin(0);
// var y=Math.cos(0);
// var dig =Math.PI/1511;
// for (var i=0;i<30;i++) {
// var x=Math.sin(idig);
// var y=Math.cos(i*dig);
// context.bezierCurveTo(dx + x * s, dy + y * s , dx + x * s , dy + y * s, dx + x * s, dy + y * s)
// }
// context.closePath();
// context.fill();
// context.stroke();
//线性渐变var lg= context.createLinearGradient(xStart,yStart,xEnd,yEnd)
// 线性渐变颜色lg.addColorStop(offset,color)
// xstart:渐变开始点x坐标
// ystart:渐变开始点y坐标
// xEnd:渐变结束点x坐标
// yEnd:渐变结束点y坐标
//
// offset:设定的颜色离渐变结束点的偏移量(0~1)
// color:绘制时要使用的颜色
// var gl=context.createLinearGradient(0,0,0,300)
//
// gl.addColorStop(0,"red");
// gl.addColorStop(0.5,"black");
// gl.addColorStop(1,"pink");
//
// context.fillStyle=gl;
// context.fillRect(0,0,400,300);
//径向渐变rg=context.createRadialGradient(xStart,yStart,radiusStart,xEnd,yEnd,radiusEnd)
// xStart:发散开始圆心x坐标
// yStart:发散开始圆心y坐标
// radiusStart:发散开始圆的半径
// xEnd:发散结束圆心的x坐标
// yEnd:发散结束圆心的y坐标
//
// radiusEnd:发散结束圆的半径
// offset:设定的颜色离渐变结束点的偏移量(0~1)
// color:绘制时要使用的颜色
// var gl=context.createRadialGradient(200,150,0,200,150,100)
// gl.addColorStop(0.1,"red");
// gl.addColorStop(1,"lightblue");
// context.fillStyle=gl;
// context.beginPath();
// context.arc(200,150,100,0,Math.PI*2,true);
// context.closePath();
// context.fill();
// var gl=context.createRadialGradient(100,150,10,300,150,50)
// gl.addColorStop(0.1,"red");
// gl.addColorStop(1,"lightblue");
// context.fillStyle=gl;
// context.fillRect(0,0,400,300);
// context.save();
// context.fillStyle="chartreuse";
// context.fillRect(0,0,400,300);
//
// context.fillStyle="crimson";
//
// context.translate(100,100);
// context.scale(0.5,0.5);
// context.rotate(Math.PI/4);
// context.fillRect(0,0,100,100);
//
// context.restore();
// context.save();
// context.fillStyle="aqua";
// context.translate(200,100);
// context.scale(0.8,0.8);
// context.rotate(Math.PI/4);
// context.fillRect(0,0,100,100);
</script>
</html>