## 第二課時:線型
以下的方法和屬性控制線條的視覺特征。
* `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()
- 第五節:使用實例
- 第一課時:動畫效果
- 第二課時:像素處理