H5學習之8 canvas的運用3 填充線性漸變顏色

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid black;">
    創建canvas畫板,設置ID等屬性
</canvas>

<script>
    var c=document.getElementById("myCanvas");/*獲取創建的IDmyCanvas的畫板*/
    var cxt= c.getContext("2d");/*創建在這個畫板上的畫筆*/
    var grd=cxt.createLinearGradient(0,0,100,0); /*創建線性漸變顏色*/
   /* cxt.createLinearGradient(x,y,a,b); 其中x y是起始點的座標,a b是結束點的座標。
   * 也就是跟PS填充線性顏色的那條線是一樣的,創建一條線,有兩個座標,確定長度與方向。
   * 然後在下邊的grd.addColorStop()裏設定百分比以及顏色。
   * 比如,線的起始點是(00. 結束點是(1000)。這條線段是100像素長度的筆直指向右邊的線,他會在座標 0-100之間進行向右的線性填充
   * 如果線是一條斜線,那麼線性顏色的方向也就是斜的,跟PS裏一樣
   * */
    grd.addColorStop(0,"black");/*設定線的起始顏色*/
    grd.addColorStop(1,"white");/*設定線的結束顏色*/
    cxt.fillStyle=grd;/*填充顏色*/
    cxt.fillRect(0,0,175,50);/*畫矩形*/
</script>
</body>
</html>
具體效果如下:



思路解釋如下:






仍然是一個canvas標籤畫板,創建在body標籤裏

<canvas id="myCanvas" width="200" height="100" style="border:1px solid black;">
   <!-- 創建canvas畫板,設置ID等屬性-->
</canvas>





然後是繪製函數,script標籤裏,sc標籤放在body標籤裏

<script>
    var c=document.getElementById("myCanvas");/*獲取創建的IDmyCanvas的畫板*/
    var cxt= c.getContext("2d");/*創建在這個畫板上的畫筆*/
    var grd=cxt.createLinearGradient(0,0,100,0); /*創建線性漸變顏色*/
   /* cxt.createLinearGradient(x,y,a,b); 其中x y是起始點的座標,a b是結束點的座標。
   * 也就是跟PS填充線性顏色的那條線是一樣的,創建一條線,有兩個座標,確定長度與方向。
   * 然後在下邊的grd.addColorStop()裏設定百分比以及顏色。
   * 比如,線的起始點是(00. 結束點是(1000)。這條線段是100像素長度的筆直指向右邊的線,他會在座標 0-100之間進行向右的線性填充
   * 如果線是一條斜線,那麼線性顏色的方向也就是斜的,跟PS裏一樣
   * */
    grd.addColorStop(0,"black");/*設定線的起始顏色*/
    grd.addColorStop(1,"white");/*設定線的結束顏色*/
    cxt.fillStyle=grd;/*填充顏色*/
    cxt.fillRect(0,0,175,50);/*畫矩形*/
</script>
其中主要是線性漸變顏色的原理,就是一條有方向以及長度的線段,然後設定顏色比重。與PS裏的那個線性填充一個原理。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章