有關(guān)canvas

canvas相關(guān)單位

實(shí)際上在剛接觸canvas的時(shí)候,我犯了一個(gè)錯(cuò)誤。將canvas的畫(huà)布進(jìn)行了如下設(shè)置:


<canvas style='width: 700px;height:700px'></canvas>

這樣設(shè)置以后,在畫(huà)布中畫(huà)圓的時(shí)候,我進(jìn)行了如下設(shè)置:


var mycanvas = ocanvas.getContext('2d');

mycanvas.beginPath();

mycanvas.arc(350,350,300,0,2*Math.PI)

后面才發(fā)現(xiàn)圓形沒(méi)有如預(yù)期那樣顯示在畫(huà)布的中央,實(shí)際上canvas中是有相關(guān)設(shè)置的。

arc中圓點(diǎn)x,y的坐標(biāo)是相對(duì)于畫(huà)布的,而畫(huà)布大小設(shè)置應(yīng)該由它自己的屬性width和height決定,而不是通過(guò)stytle來(lái)設(shè)置。

所以最后修改如下:


<canvas width='700' height='700'></canvas>

顯示成功

canvas相關(guān)對(duì)象

我通過(guò)在控制臺(tái)打印canvas.getContext(‘2d’)得到的對(duì)象,發(fā)現(xiàn)如下屬性,便于處理

canvasRenderingContext2d對(duì)象.png

canvas的stroke()方法

需要注意在畫(huà)的線時(shí),上一條線的strokeStyle會(huì)影響下一條,即便使用了beginPath。所以解決方法只有每條線都設(shè)置相應(yīng)的strokeStyle才行。

canvas清空畫(huà)布方法

我采用的是以下鏈接的第二種方法:

http://blog.csdn.net/inuyasha1121/article/details/53925538

(接下來(lái)考慮stroke顏色加深的問(wèn)題)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一:canvas簡(jiǎn)介 1.1什么是canvas? ①:canvas是HTML5提供的一種新標(biāo)簽 ②:HTML5 ...
    GreenHand1閱讀 4,874評(píng)論 2 32
  • 一、canvas簡(jiǎn)介 1.1 什么是canvas?(了解) 是HTML5提供的一種新標(biāo)簽 Canvas是一個(gè)矩形區(qū)...
    J_L_L閱讀 1,674評(píng)論 0 4
  • 一、canvas簡(jiǎn)介 1.1 什么是canvas?(了解) 是HTML5提供的一種新標(biāo)簽 Canvas是一個(gè)矩形區(qū)...
    Looog閱讀 4,034評(píng)論 3 40
  • HTML5 中新增的一個(gè)相當(dāng)于畫(huà)布的標(biāo)簽,自帶各種 API ,通過(guò) JS 調(diào)用和搭配,實(shí)現(xiàn)圖案繪制和想要的效果。 ...
    Primers閱讀 1,570評(píng)論 0 1
  • 神經(jīng)衰弱易失眠閱讀 278評(píng)論 3 2

友情鏈接更多精彩內(nèi)容