## 第二课时:线型
以下的方法和属性控制线条的视觉特征。
* `CanvasRenderingContext2D.lineWidth`:指定线条的宽度,默认为 1.0。
* `CanvasRenderingContext2D.lineCap`:指定线条末端的样式,有三个可能的值:`butt`(默认值,末端为矩形)、`round`(末端为圆形)、`square`(末端为突出的矩形,矩形宽度不变,高度为线条宽度的一半)。
* `CanvasRenderingContext2D.lineJoin`:指定线段交点的样式,有三个可能的值:`round`(交点为扇形)、`bevel`(交点为三角形底边)、`miter`(默认值,交点为菱形)。
* `CanvasRenderingContext2D.miterLimit`:指定交点菱形的长度,默认为10。该属性只在`lineJoin`属性的值等于`miter`时有效。
* `CanvasRenderingContext2D.getLineDash()`:返回一个数组,表示虚线里面线段和间距的长度。
* `CanvasRenderingContext2D.setLineDash()`:数组,用于指定虚线里面线段和间距的长度。
~~~
var canvas = document.getElementById('myCanvas');
var ctx = canvas.getContext('2d');
ctx.beginPath();
ctx.moveTo(100, 100);
ctx.lineTo(200, 200);
ctx.lineTo(100, 200);
ctx.lineWidth = 3;
ctx.lineCap = 'round';
ctx.lineJoin = 'round';
ctx.setLineDash([15, 5]);
ctx.stroke();
~~~
上面代码中,线条的宽度为3,线条的末端和交点都改成圆角,并且设置为虚线。
- 第一章:音视频
- 第一节:概述
- 第二节:媒体元素
- 第三节:视频元素
- 第四节:音频元素
- 第四节:事件
- 第二章:高德地图
- 第三章:Storage 接口
- 第一节:概述
- 第二节:属性和方法
- 第三节:事件
- 第四章:IndexedDB
- 第一节:概述
- 第二节:基本概念
- 第三节:indexedDB 对象
- 第四节:IDBRequest 对象
- 第五节:IDBDatabase 对象
- 第六节:IDBObjectStore 对象
- 第七节:IDBTransaction 对象
- 第八节:IDBIndex 对象
- 第九节:IDBCursor 对象
- 第十节:IDBKeyRange 对象
- 第十一节:操作流程
- 第五章:Canvas
- 第一节:概述
- 第二节:绘制图像
- 第一课时:路径
- 第二课时:线型
- 第三课时:矩形
- 第四课时:弧线
- 第五课时:文本
- 第六课时:渐变色和图像填充
- 第七课时:阴影
- 第三节:图像处理
- 第一课时:写入图像
- 第二课时:像素读写
- 第三课时:保存和恢复
- 第四课时:画布
- 第五课时:图像变换
- 第四节:元素方法
- 第一课时:toDataURL()
- 第二课时:toBlob()
- 第五节:使用实例
- 第一课时:动画效果
- 第二课时:像素处理