中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

HTML5 canvas怎么填充樣式

發布時間:2021-08-12 10:22:08 來源:億速云 閱讀:127 作者:chen 欄目:web開發

這篇文章主要介紹“HTML5 canvas怎么填充樣式”,在日常操作中,相信很多人在HTML5 canvas怎么填充樣式問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”HTML5 canvas怎么填充樣式”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

<canvas></canvas>是HTML5中新增的標簽,用于繪制圖形,實際上,這個標簽和其他的標簽一樣,其特殊之處在于該標簽可以獲取一個CanvasRenderingContext2D對象,我們可以通過JavaScript腳本來控制該對象進行繪圖。

<canvas></canvas>只是一個繪制圖形的容器,除了id、class、style等屬性外,還有height和width屬性。在<canvas>>元素上繪圖主要有三步:

1.獲取<canvas>元素對應的DOM對象,這是一個Canvas對象;
2.調用Canvas對象的getContext()方法,得到一個CanvasRenderingContext2D對象;
3.調用CanvasRenderingContext2D對象進行繪圖。

填充樣式

前面用到的fillStyle和strokeStyle除了設置顏色外,還能設置其他填充樣式,這里以fillStyle為例:

 &bull;線性漸變

使用步驟
(1)var grd = context.createLinearGradient( xstart , ystart, xend , yend )創建一個線性漸變,設置起始坐標和終點坐標;
(2)grd.addColorStop( stop , color )為線性漸變添加顏色,stop為0~1的值;
(3)context.fillStyle=grd將賦值給context。

 &bull;徑向漸變
該方法與線性漸變使用方法類似,只是第一步接收的參數不一樣
var grd = context.createRadialGradient(x0 , y0, r0 , x1 , y1 , r1 );接收起始圓心的坐標和圓半徑以及終點圓心的坐標和圓的半徑。

 &bull;位圖填充
createPattern( img , repeat-style )使用圖片填充,repeat-style可以取repeat、repeat-x、repeat-y、no-repeat。 

JavaScript Code復制內容到剪貼板

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

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

  3.   

  4.     //線性漸變   

  5.     var grd = context.createLinearGradient( 10 , 10, 100 , 350 );   

  6.     grd.addColorStop(0,"#1EF9F7");   

  7.     grd.addColorStop(0.25,"#FC0F31");   

  8.     grd.addColorStop(0.5,"#ECF811");   

  9.     grd.addColorStop(0.75,"#2F0AF1");   

  10.     grd.addColorStop(1,"#160303");   

  11.     context.fillStyle = grd;   

  12.     context.fillRect(10,10,100,350);   

  13.   

  14.     //徑向漸變   

  15.     var grd = context.createRadialGradient(325 , 200, 0 , 325 , 200 , 200 );   

  16.     grd.addColorStop(0,"#1EF9F7");   

  17.     grd.addColorStop(0.25,"#FC0F31");   

  18.     grd.addColorStop(0.5,"#ECF811");   

  19.     grd.addColorStop(0.75,"#2F0AF1");   

  20.     grd.addColorStop(1,"#160303");   

  21.     context.fillStyle = grd;   

  22.     context.fillRect(150,10,350,350);   

  23.   

  24.     //位圖填充   

  25.     var bgimg = new Image();   

  26.     bgimg.src = "background.jpg";   

  27.     bgimg.onload=function(){   

  28.         var pattern = context.createPattern(bgimg, "repeat");   

  29.         context.fillStyle = pattern;   

  30.         context.strokeStyle="#F20B0B";   

  31.         context.fillRect(600, 100, 200,200);   

  32.         context.strokeRect(600, 100, 200,200);   

  33.     };   

  34.   

效果如下:

HTML5 canvas怎么填充樣式

到此,關于“HTML5 canvas怎么填充樣式”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

石门县| 桂阳县| 蒲城县| 阿克陶县| 洪江市| 洱源县| 罗平县| 开江县| 丹江口市| 蓬安县| 朝阳市| 彩票| 建德市| 元氏县| 兰溪市| 中山市| 台南县| 江源县| 阳春市| 长沙县| 大关县| 峨眉山市| 望谟县| 中西区| 承德县| 阿瓦提县| 海城市| 镇沅| 平利县| 自治县| 时尚| 普格县| 龙海市| 曲麻莱县| 电白县| 稷山县| 安康市| 河津市| 中牟县| 静海县| 南丰县|