canvas 系列(二)

現在你有沒有什么疑問。坐標(10,10)的相對于哪里的原點?

  • canva 之所以叫畫布,是因為它就是網格,每個網格對應一個像素,左上角就是原點(0,0)

  • 不同于 svg,canvas 只能繪制矩形,有以下三種繪制矩形的方法

fillRect(x, y, width, height)  // 繪制填充的矩形
strokeRect(x, y, width, height)  // 繪制矩形邊框
chearRect(x, y, width, height) // 清空矩形區域
  • 接著上一篇文章,實現在矩形中間扣掉一個空白區域
let canvas = document.getElementById("canvas") // 獲取頁面canvas對象
let ctx = canvas.getContext("2d") // 獲取繪制圖形的上下文,參數可以是2d、3d...

ctx.fillStyle = "rgb(0, 0, 0)" // 下面繪制圖形的填充色
ctx.fillRect(10, 10 , 100, 100) // 從坐標(10,10)的地方畫個寬100高100矩形

// 在中心點清除一個矩形 50x50的矩形
let width = 50
// 中心矩形左上角坐標
let center = 10 + (100 - width)/2
ctx.clearRect(center, center, width, width)

// 在中心再畫一個黑色的20x20矩形
let width1 = 20
// 中心矩形左上角坐標
let center1 = 10 + (100 - width1)/2
ctx.fillRect(center1, center1 , width1, width1) 

  • 厲害了,你居然畫了這樣一個圖形


最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。