用滑鼠在 Canvas 上作畫
目標
- 使用HTML5的 Canvas來製作一個畫布
- 透過 滑鼠 可達到作畫的效果
實踐步驟
- 建立 - canvas的區塊,設定為- 2D環境,並設定相關屬性- strokeStyle、lineJoin、lineCap、lineWidth
 
- 透過 JS 設定 canvas 會應用到的相關變數 - canvas的顏色、線條粗細、座標…等
- function draw(e)
 
- 監聽 滑鼠 的事件 - 開始作畫:mousedown
- 作畫中:mousemove
- 結束作畫:mouseup、mouseout
 
成品
canvas學習紀錄
設定線條樣式
下列為這次 canvas 作畫用到的屬性
- strokeStyle線條顏色
- lineJoin線條轉彎的樣式
- lineCap線條收尾的樣式
- lineWidth線條寬度
| 1 | <canvas id="draw" width="800" height="800"></canvas> | 
| 1 | const canvas = document.querySelector('#draw'); | 
作畫步驟
利用JS完成作畫的步驟,如下
- beginPath()宣告開始作畫
- moveTo()作畫的起點
- lineTo()作畫的終點
- stroke()完成作畫
| 1 | ctx.beginPath(); | 
JS學習紀錄
DOM監聽事件之this
此次範例,作者在 DOM監聽事件 使用了 箭頭函式,雖然看似沒什麼情況,
不過有一點要注意,若是有要對本身的DOM做修改的話,this 這個變數就會有所差異,
如下例所示。
| 1 | canvas.addEventListener('mousedown', (e) => { | 
| 1 | canvas.addEventListener('mousedown', function(e) { | 
