HTML 5 <canvas>基礎(chǔ)圖形

第一篇簡書獻(xiàn)給<canvas>,作為一個(gè)自我督促,以下效果也可通過CSS3實(shí)現(xiàn)


<canvas></canvas>標(biāo)簽提供一個(gè)容器,可以用腳本在其中作圖

步驟一:在html中寫入<canvas id=“”></canvas>;

步驟二:在javascript中獲取對(duì)象:

var canvas = document.getElementById("id");

var context = canvas.getContext("2d");

步驟三:創(chuàng)意時(shí)刻

注:畫板的默認(rèn)長寬是300px*150px,如需改變需要利用js進(jìn)行相關(guān)的調(diào)整

繪制矩形:

context.fillRect(x,y,width,height); ?//填充

strokeRect(x,y,width,height); ?//描邊

context.fillStyle = "red"; ?//填充顏色

context.strokeStyle = "blue"; ?//描邊顏色

context.fillStyle = "rgba(255,0,0,0.2)"; ?//設(shè)置填充透明度

context.strokeStyle = "rgba(255,0,0,0.2)"; ?//設(shè)置描邊透明度

繪制圓?。?/p>

context.beginPath();

context.arc(x, y, radius, starAngle,endAngle, anticlockwise);

context.closePath();

context.fill();

其中radius是半徑,starAngle是開始角度,endAngle是結(jié)束角度,anticlockwise中true或false隨便用,不設(shè)置style默認(rèn)為黑色填充;方便起見,每做一個(gè)圓弧設(shè)置一個(gè)context.beginPath()和context.closePath()

繪制直線

context.moveTo(x,y); ?//設(shè)置起點(diǎn)

context.lineTo(x,y) ?//設(shè)置終點(diǎn)

context.stroke();

漸變

1.線性漸變

var lg= context.createLinearGradient(xStart,yStart,xEnd,yEnd); ?//漸變開始和結(jié)束坐標(biāo)

lg.addColorStop(offset,color); ?//設(shè)置(0~1)之間顏色的偏移量

context.fillStyle =lg;

context.fillRect(x, y, width, height);

2.徑向漸變

var rg=context.createRadialGradient(xStart,yStart,radiusStart,xEnd,yEnd,radiusEnd);

rg.addColorStop(offset,color);

context.fillStyle = rg;

context.beginPath();

context.arc(xStart,yStart, radius, 0, Math.PI * 2, true);

context.closePath();

context.fill();

呈現(xiàn)的效果是一個(gè)小球

最后編輯于
?著作權(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),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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