三种样式区别
端点样式代码例子
lineCap线条端点样式
linecap只能作用在线段首尾,中间不可
lineCap = "square",可以让线段闭合处的缺口闭合
建议使用closePath来封闭多边形
round和square为圆角头和方角头,butt没有线段头
线条属性
lineCap — 线条帽子:
+ butt (default)
+ round 圆头
+ square 方头
注意:lineCap只能用于线段的开始处和结尾处

可以设置context.lineCap="square"来封闭多边形,但是不推荐,还是推荐使用closePath()来封闭多边形
注意,只有线段的两个端点才会应用lineCap属性。比如这个箭头的末端是圆润的因为设置了context.lineCap="round"; 而其他接点都是正常的
三条线条分别设置了不同的lineCap
1、context.lineCap = "butt";
2、context.lineCap = "round";
3、context.lineCap = "square";
lineCap:设置线条两段的形状
butt(default)
round
square
lineCap:只能用于线段的开始处和结尾处,不能用于连接处。
lineCap设置线条的帽子:butt(默认)、round、square。后两者绘制出的线条都要长一些(戴上了帽子)。lineCap适用于线条的起始处和结尾处不适用于连接处。
通常绘制一个封闭的多边形用beginPath()和closePath()(推荐),但也可以不用closePath()而用lineCap = “square”来实现
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>lineCap</title>
</head>
<body>
<canvas id="canvas" style="border: 1px solid black;display: block;margin:10px auto;"></canvas>
<script type="text/javascript">
window.onload=function(){
var c=document.getElementById("canvas");
c.width=800;
c.height=500;
var ctx=c.getContext("2d");
//使用canvas绘图
/*
*lineCap属性
* 属性值:
* butt(default)
* round:会突出一个圆形的头
* square:会突出一个方形的头
*/
ctx.lineWidth=10;
ctx.strokeStyle="#058";
ctx.beginPath();
ctx.moveTo(100,100);//定义线条开始坐标
ctx.lineTo(200,100)//线条结束坐标
ctx.lineCap="butt";
ctx.stroke();
ctx.beginPath();
ctx.moveTo(100,200);//定义线条开始坐标
ctx.lineTo(200,200)//线条结束坐标
ctx.lineCap="round";
ctx.stroke();
ctx.beginPath();
ctx.moveTo(100,300);//定义线条开始坐标
ctx.lineTo(200,300)//线条结束坐标
ctx.lineCap="square";
ctx.stroke();
}
</script>
</body>
</html>