1. 程式人生 > >canvas畫布寬高設定---不能用css設定樣式

canvas畫布寬高設定---不能用css設定樣式

    在寫demo練習canvas畫圖時,新建一個canvas畫布,先將寬高寫在了css中,沒有在canvas標籤中設定寬高,得到的效果是錯誤的,程式碼及效果如下,

    正確的情況是一條45度傾斜從(10,10)到(200,200)的直線,但是顯示的效果變形了。查閱資料找到了原因。

    <canvas >中有預設寬高300px*150px,如果在<canvas>標籤中沒有設定寬高,那麼瀏覽器就會取預設值並進行拉伸,實際上我們在css中定義的寬高並沒有生效,所以會出現變形的情況。

    正確的寫法應該是在<canvas>中設定所需寬高。

    還有一種寫法是使用HTML5 Canvas API操作。

    注意不要寫成drawing.style.width,那樣等於是設定了css,仍然會被拉伸。canvas畫布寬高只能通過數值設定,不能使用百分比,也不需要單位。