Canvas如何绘制折线?

线段在绘图中的应用真的非常广泛呢!除了我们常见的直线,还有折线、虚线等等,真是让人大开眼界。现在让我给大家分享一个使用Canvas绘制线段的例子。
在这个例子中,我们用Canvas画了四条线。第一条是最简单的直线,第二条线的宽度变粗了,第三条线的颜色变成了蓝色,而第四条线则变成了虚线。是不是很神奇呢?让我们来看看代码:

示例效果与源代码:

运行效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// 从页面中获取画布对象
let canvas = document.getElementById('canvas');
// 从画布中获取“渲染上下文”对象
let ctx = canvas.getContext('2d');

// 绘制简单直线
ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(450, 50);
ctx.stroke();

// 绘制加粗的直线
ctx.beginPath();
ctx.moveTo(50, 110);
ctx.lineTo(450, 110);
ctx.lineWidth=5;
ctx.stroke();

// 绘制蓝色直线
ctx.beginPath();
ctx.moveTo(50, 170);
ctx.lineTo(450, 170);
ctx.strokeStyle="blue";
ctx.stroke();

// 绘制虚线
ctx.beginPath();
ctx.moveTo(50, 230);
ctx.lineTo(450, 230);
ctx.setLineDash([20, 15]);
ctx.stroke();

这个代码示例中,我们用到了Canvas的渲染上下文的几个方法:beginPath()moveTo()lineTo()stroke()。通过这些方法,我们可以轻松地绘制出各种样式的线段。

要绘制折线,其实也是通过绘制路径来实现的。以下是绘制折线的步骤:

  1. 使用beginPath()开始绘制路径;
  2. 使用moveTo()将路径的起点移动到指定坐标;
  3. 使用lineTo()绘制直线至指定坐标;
  4. 设置线段的样式,例如线宽、颜色等;
  5. 使用stroke()fill()完成描边或填充。

此外,为了更好地理解如何绘制这四条线,我还绘制了一张示意图,展示了每条线的起点和终点坐标。这样可以帮助我们更好地理解如何通过代码来控制线条的位置和样式。

运行效果