canvas 画布,通过dom可以动态添加到html树中,或者静态的写在html文件中。
canvas元素只有两个属性 width height;其创造了一个固定大小的画布,所有的渲染操作均在这个画布上进行。
两种渲染方式: 2d模式和webgl模式
var canvas = document.getElementById(‘canvas’);
var ctx = canvas.getContext(‘2d’);
var gl = canvas.getContext(‘experimental-webgl’);
or var gl = canvas.getContext(‘webgl’);
坐标系是左上角(0, 0)右x增大 下y增大
2d的API:
ctx.fillStyle 填充样式
ctx.strokeStyle 轮廓样式
fillStyle = color gradient pattern
ctx.fillRect(x, y, width, height) 绘制填充矩形
ctx.strokeRect(x, y, width, height) 绘制一个矩形边框
clearRect(x, y, width, height) 清除指定区域
坐标均是相对于canvas原点。
绘制路径:
ctx.beginPath();
beginPath 生成一条路线,这条路线的style为当前style,可以多次调用开始生成多条路线,每条路线style可以不相同。
ctx.moveTo(x, y); 会断掉当前的线,直接跳到下一个起始点
ctx.lineTo(x, y);
ctx.closePath();
ctx.stroke();以线条