canvas知識點

1.canvas標(biāo)簽

<canvas id="canvas">
      你的瀏覽器不支持canvas瓣蛀,請升級瀏覽器.
</canvas>

2.canvas繪圖上下文context

var canvas  = document.getElementById( 'canvas' ); //獲得畫布
var ctx = canvas.getContext( '2d' );//注意:2d小寫惋增, 3d:webgl
1)上下文改鲫,所有繪制操作api的入口。
2)canvas本身無法繪制任何內(nèi)容稽亏,canvas的繪圖是使用Javascript操作的缕题。

3.基本的繪制路徑

3.1 設(shè)置繪制起點(moveTo)
語法:ctx.moveTo(x,y)
注意:1、設(shè)置上下文繪制路徑的起點瘪松。
      2凉逛、 x群井,y都是相對于canvas 盒子的左上角书斜。
      3、 繪制線段必須先設(shè)置起點荐吉。
3.2 設(shè)置直線(lineTo)
語法:ctx.lineTo(x,y)
注意:1、從x,y的位置繪制一條直線到起點或者上一個線頭點穿撮。
3.3 路徑開始和閉合
開始路徑 ctx.beginPath();
閉合路徑 ctx.closePath();
注意:1悦穿、繪制不同狀態(tài)的線段或者形狀,必須使用開始新路徑的方法把不同的繪制操作隔開业踢。
      2、閉合路徑會自動把最后的線頭和開始的線頭連在一起瞬沦。
3.4 描邊(stroke)
語法:ctx.strokeStyle = "rgb(255,0,0)";
      ctx.stroke();
注意:1雇锡、根據(jù)路徑繪制線。路徑只是草稿曙痘,真正繪制線必須執(zhí)行stroke。
3.5 填充(fill)
語法:ctx.fillStyle="green";
     ctx.fill();
注意:1欲账、將閉合路徑的內(nèi)容填充具體的顏色屡江。
3.6 繪制矩形
語法:創(chuàng)建矩形:ctx.rect(x,y,width,height)
      描邊矩形:ctx.strokeRect(x,y,width,height)
      填充矩形:ctx.fillRect(x,y,width,height)
      清除矩形:ctx.clearRect(x,y,width,height)
注意:1、x,y為矩形左上角坐標(biāo)赛不。
      2惩嘉、該方法只是規(guī)劃了路徑,并沒有填充和描邊踢故。
      3文黎、需加ctx.fill()以填充 || ctx.stroke()描邊
3.7 繪制圓形(arc)
語法:ctx.arc(x,y,r,sAngle,eAngle,counterclockwise);
注意:1、x,y圓心坐標(biāo)殿较。
      2耸峭、r半徑
      3、sAngle繪制開始的弧度淋纲,圓心到最右邊點是0度劳闹,順時針方向弧度增大。
      4、eAngle結(jié)束的弧度业汰,單位π
      5、counterclockwise是否逆時針放祟,true逆時針
      6跪妥、弧度角度轉(zhuǎn)換:rad = deg*Math.PI/180;
true為逆時針醒串,false為順時針

4.canvas顏色樣式和陰影

4.1 顏色
ctx.fillStyle :  設(shè)置或返回用于填充繪畫的顏色
ctx.strokeStyle:  設(shè)置或返回用于筆觸的顏色
4.2 陰影
    ctx.fillStyle = "pink"
    ctx.shadowColor = "陰影顏色";
    ctx.shadowBlur = 正數(shù)(模糊級別);
    ctx.shadowOffsetX = 10;
    ctx.shadowOffsetY = 10;
    ctx.fillRect(100, 100, 100, 100);

5.canvas文本and漸變and圖像

5.1 文本
語法:1、font - 定義字體
      2缠沈、fillText(text,x,y) - 繪制實心文本
      3颓芭、strokeText(text,x,y) - 繪制空心文本
案例:
      ctx.strokeStyle = "blue";
      ctx.font = "30px Arial";
      ctx.fillText("hello world",10,50);
      (高30px、Arial字體的藍(lán)色實心文字)
5.2 漸變
語法:1州藕、createLinearGradient(x,y,x1,y1) - 線條漸變
     2、createRadialGradient(x,y,r,x1,y1,r1) - 徑向漸變
案例:
      (創(chuàng)建漸變锈死、填充漸變)
      var  grd = ctx.createLinearGradient(0,0,200,0);
      grd.addColorStop(0,"red");
      grd.addColorStop(1,"white");

      ctx.fillStyle = grd;
      ctx.fillRect = "10,10,100,100"
5.3 圖像
ctx.drawImage(image严嗜,10茄蚯,10)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市询一,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缩功,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異啦桌,居然都是意外死亡震蒋,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來菌仁,“玉大人,你說我怎么就攤上這事摹迷。” “怎么了鲫寄?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵靠抑,是天一觀的道長颂碧。 經(jīng)常有香客問我,道長诉瓦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮昔脯,結(jié)果婚禮上云稚,老公的妹妹穿的比我還像新娘燕雁。我一直安慰自己,他們只是感情好猬膨,可當(dāng)我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般尖淘。 火紅的嫁衣襯著肌膚如雪村生。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天典徘,我揣著相機(jī)與錄音烂斋,去河邊找鬼罕模。 笑死,一個胖子當(dāng)著我的面吹牛抛腕,可吹牛的內(nèi)容都是我干的摔敛。 我是一名探鬼主播刹悴,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼证杭,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了琢歇?” 一聲冷哼從身側(cè)響起梦鉴,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤宠互,失蹤者是張志新(化名)和其女友劉穎搏色,沒想到半個月后频轿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡秽之,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年冀惭,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片划址。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡嵌洼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出逸嘀,到底是詐尸還是另有隱情车要,我是刑警寧澤,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布崭倘,位于F島的核電站翼岁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏司光。R本人自食惡果不足惜琅坡,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望残家。 院中可真熱鬧榆俺,春花似錦、人聲如沸坞淮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽回窘。三九已至诺擅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啡直,已是汗流浹背烁涌。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留付枫,地道東北人烹玉。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像阐滩,于是被迫代替她去往敵國和親二打。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 一:canvas簡介 1.1什么是canvas掂榔? ①:canvas是HTML5提供的一種新標(biāo)簽 ②:HTML5 ...
    GreenHand1閱讀 4,674評論 2 32
  • 一继效、canvas簡介 1.1 什么是canvas症杏?(了解) 是HTML5提供的一種新標(biāo)簽 Canvas是一個矩形區(qū)...
    Looog閱讀 3,939評論 3 40
  • 一、canvas簡介 1.1 什么是canvas瑞信?(了解) 是HTML5提供的一種新標(biāo)簽 Canvas是一個矩形區(qū)...
    J_L_L閱讀 1,507評論 0 4
  • 一厉颤、簡介 HTML5 中的定義:“它是依賴分辨率的位圖畫布,你可以在 canvas 上面繪制任何圖形凡简,甚至加載照片...
    destiny0904閱讀 10,521評論 1 4
  • 書中代碼示例效果展示:Core HTML5 Canvas Examples 基礎(chǔ)知識 canvas元素 canva...
    szu_bee閱讀 2,810評論 2 28