学科分类
目录
HTML5+CSS3

线的路径

在画布中绘制的所有图形都会形成路径,通过初始位置和连线端点便会形成一条绘制路径。路径需要通过路径状态进行分割或闭合,来产生不同的路径样式。路径的状态包括重置路径和闭合路径两种,具体介绍如下。

1. 重置路径

在同一画布中,我们添加再多的连线端点也只能有一条路径,如果想要开始新的路径,就需要使用beginPath()方法,当出现beginPath()即表示路径重新开始。示例代码如下。

 1<body>

 2  <canvas id="cas" width="1000" height="300">

 3    您的浏览器不支持canvas标签。

 4  </canvas>

 5  </body>

 6  </html>

 7  <script>

 8    var context = document.getElementById("cas").getContext('2d');

 9    context.moveTo(10,10);//定义初始位置

 10   context.lineTo(300,10);//定义连线端点

 11   context.lineWidth='5';

 12   context.strokeStyle='#00f';

 13   context.stroke();//定义描边 

 14   context.moveTo(10,50);//定义初始位置

 15   context.lineTo(300,50);//定义连线端点

 16   context.lineWidth='5';

 17   context.strokeStyle='#f00';

 18   context.stroke();//定义描边

 19 </script>

运行示例代码,效果如图1所示。

image-20200623162154161

图 1 设置线条颜色

由于两条线在同一路径中,因此第一条线并没有显示预期的蓝色,而是被红色覆盖。想要让线显示不同的颜色,就需要对路径进行分割。在第13行代码和第14行代码之间添加以下代码。

context.beginPath();//重置路径

运行示例代码,效果如图2所示。

image-20200623162332478

图2 设置线条颜色

2. 闭合路径

闭合路径就是将我们绘制的开放路径,进行封闭处理,多点的路径闭合后会形成特定的形状。在画布中,使用closePath()方法闭合路径。例如下面的示例代码片段,用于绘制一条L形的线。

 1    var context = document.getElementById("cas").getContext('2d');

 2    context.moveTo(10,10);//定义初始位置

 3    context.lineTo(10,100);//定义连线端点

 4    context.lineTo(100,100);//定义连线端点

 5    context.strokeStyle='#00f';

 6    context.stroke();//定义描边

运行示例代码,效果如图3所示。

image-20200623162441031

图 3 绘制线

图3所示,通过线可以绘制一个L形字母,当我们在第4行代码和第5行代码之间添加closePath()方法,具体代码如下。

context.closePath()//闭合路径

此时刷新页面,路径就会闭合,变为一个直角三角形,如图4所示。

image-20200623162604657

图 4 闭合路径

点击此处
隐藏目录