一、canvas元素
- 目标:熟系绘制图形和图像
- 属性:width height
- API
<canvas width="800" height="600" id="MyCanvas"></canvas>
<script>
var Mycanvas = document.getElementById('mc');
var c = Mycanvas.getContext("2d");
</script>
二、canvas基本使用
- 开始绘制:beginPath();
- 结束绘制:closePath();//闭合路径
- 清除画布:clearRect(x,y,width,height);
1. 绘制线段
mc.beginPath();
mc.strokeStyle = 'red';
mc.lineWidth = 3;
mc.moveTo(50,50);
mc.lineTo(150,50);
mc.stroke();
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5f6b16cb10fc03fd9d0e1f7334fa3e47.png)
2. 绘制三角形
mc.beginPath();
mc.moveTo(200,50);
mc.lineTo(200,150);
mc.lineTo(250,100);
mc.closePath();
mc.stroke();
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/6b4fb2be859c860913fcdc4adf314580.png)
3. 绘制矩形
mc.beginPath();
mc.fillStyle = "#ddffee";
mc.strokeRect(50,97,100,50);
mc.fillRect(50,150,100,50);
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/dc6508a4e8ae68786a9faba143517f7b.png)
4. 绘制圆形
mc.beginPath();
mc.strokeStyle = 'red';
mc.fillStyle = "#ddffee";
mc.arc(450,100,80,0*Math.PI/180,360*Math.PI/180,true);
mc.stroke();
mc.fill();
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9fe4900b0a7ed56166b2dd8e8659f181.png)
5. 文字动画
mc.beginPath();
mc.fillStyle = "red";
mc.font = "20px 微软雅黑";
var x = 0;
function pmd(){
x++;
if(x>=1000){
x = 0;
}
mc.clearRect(0,220,1000,100);
mc.fillText("我想带一人回云深不知处,带回去,藏起来",x,250);
mc.fillText("你一开口我就想笑,我一笑,剑就拿不稳了",x+80,290);
}
setInterval("pmd()",10);
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ed4620bcfeef2563bf4b99922223b3f9.png)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c36c34ef1f349a14ce85d35f4c9f5eb8.png)