中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

HTML5canvas怎么繪制動態徑向漸變-創新互聯

HTML5 canvas怎么繪制動態徑向漸變?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創新互聯公司長期為數千家客戶提供的網站建設服務,團隊從業經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態環境。為駐馬店企業提供專業的網站制作、成都做網站駐馬店網站改版等技術服務。擁有十載豐富建站經驗和眾多成功案例,為您定制開發。

如果要使用HTML Canvas實現徑向漸變,我們需要使用createRadialGradient()方法。下面我們來看具體的內容。

HTML5 canvas怎么繪制動態徑向漸變

createRadialGradient()

createRadialGradient()的參數如下。

createRadialGradient(徑向漸變開始的X坐標,徑向漸變開始的Y坐標,徑向漸變開始的半徑,徑向漸變結束的X坐標,徑向漸變結束的Y坐標,徑向漸變結束的半徑)

我們來看具體的示例

在漸變開始和漸變結束的圓心一致的情況下

代碼如下

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <meta charset="utf-8" />
  <style>
    body {
      background: #C0C0C0;
    }  
</style>
  <script>
    function PageLoad() {
      var CanvasWidth = 1200;     
      var CanvasHeight = 480;      
      var canvas = document.getElementsByTagName('canvas')[0],
          ctx = null,
          grad = null,
          color = 255;      
      if (canvas.getContext('2d')) {
        ctx = canvas.getContext('2d');
        ctx.clearRect(0, 0, CanvasWidth, CanvasHeight);

        grad = ctx.createRadialGradient(0, 0, 64, 0, 0, 512);
        grad.addColorStop(0, '#000000');
        grad.addColorStop(1, '#2869fd');
        ctx.fillStyle = grad;

        ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);

        canvas.addEventListener('mousemove', function (evt) {
                var width = window.innerWidth,
          height = window.innerHeight,
          x = event.clientX,
          y = event.clientY,

          grad = ctx.createRadialGradient(x, y, 64, x, y,512);
          grad.addColorStop(0, '#000000');
          grad.addColorStop(1, '#2869fd');

          ctx.fillStyle = grad;
          ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);
        }, false);
      }
    }  
</script>
</head>
<body onload="PageLoad();">
  <canvas width="1200" height="480"></canvas>
</body>
</html>

說明:

加載頁面時,body標簽的onload執行PageLoad()函數,PageLoad函數的以下代碼在頁面加載時執行。

canvas對象使用getElementsByTagName()函數獲取對象,getContext獲取畫布的上下文。使用上下文clearRect()方法清除初始化。通過上下文的createRadialGradient()方法創建漸變。如果成功,漸變對象會以返回值返回。漸變的顏色由漸變對象的addColorStop方法指定。

在畫布上繪圖可以將漸變對象指定給上下文的fillStyle,并使用fillRect方法繪制漸變。

var CanvasWidth = 1200;      
var CanvasHeight = 480;      
var canvas = document.getElementsByTagName('canvas')[0],
          ctx = null,
          grad = null,
          color = 255;      
          if (canvas.getContext('2d')) {
        ctx = canvas.getContext('2d');
        ctx.clearRect(0, 0, CanvasWidth, CanvasHeight);
        grad = ctx.createRadialGradient(0, 0, 64, 128, 64, 320);
        grad.addColorStop(0, '#b43700');
        grad.addColorStop(1, '#ffe063');
        ctx.fillStyle = grad;
        ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);
      }
    }

當鼠標在畫布上移動時,將執行以下代碼。創建一個以鼠標坐標為中心的圓形漸變,并可以在畫布上繪制它。

canvas.addEventListener('mousemove', function (evt) {
          var width = window.innerWidth,
          height = window.innerHeight,
          x = event.clientX,
          y = event.clientY,
          grad = ctx.createRadialGradient(x, y, 64, x, y,512);
          grad.addColorStop(0, '#000000');
          grad.addColorStop(1, '#2869fd');
          ctx.fillStyle = grad;
          ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);
        }, false);

運行結果

使用Web瀏覽器顯示上述HTML文件。將顯示如下所示的效果。

HTML5 canvas怎么繪制動態徑向漸變

如果在藍色畫布中移動鼠標,漸變將會隨著變化。

HTML5 canvas怎么繪制動態徑向漸變

HTML5 canvas怎么繪制動態徑向漸變

在漸變開始和漸變結束的圓心不一致的情況下

代碼如下

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <meta charset="utf-8" />
  <style>
    body {
      background: #C0C0C0;
    }  
</style>
  <script>
    function PageLoad() {
      var CanvasWidth = 1200;      
      var CanvasHeight = 480;      
      var canvas = document.getElementsByTagName('canvas')[0],
          ctx = null,
          grad = null,
          color = 255;      
      if (canvas.getContext('2d')) {
        ctx = canvas.getContext('2d');
        ctx.clearRect(0, 0, CanvasWidth, CanvasHeight);

        grad = ctx.createRadialGradient(0, 0, 64, 128, 64, 320);
        grad.addColorStop(0, '#b43700');
        grad.addColorStop(1, '#ffe063');
        ctx.fillStyle = grad;

        ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);

        canvas.addEventListener('mousemove', function (evt) {
                var width = window.innerWidth,
          height = window.innerHeight,
          x = event.clientX,
          y = event.clientY,

          grad = ctx.createRadialGradient(x, y, 64, x+128, y+64, 320);
          grad.addColorStop(0, '#b43700');
          grad.addColorStop(1, '#ffe063');

          ctx.fillStyle = grad;
          ctx.fillRect(0, 0, CanvasWidth, CanvasHeight);
        }, false);
      }
    }  
</script>
</head>
<body onload="PageLoad();">
  <canvas width="1200" height="480"></canvas>
</body>
</html>

說明

具體思路和前面的例子一樣。只是將createRadialGradir的漸變的圓心從鼠標指針的坐標向x方向+ 128,y方向+ 64,錯開漸變和結束的圓的中心。

運行結果

使用Web瀏覽器顯示上述HTML文件。將顯示如下所示的效果。

HTML5 canvas怎么繪制動態徑向漸變

如果在畫布中移動鼠標,漸變將隨之變化。由于漸變的開始位置和結束位置的中心點不同,因此可以確認漸變不對稱。

HTML5 canvas怎么繪制動態徑向漸變

關于HTML5 canvas怎么繪制動態徑向漸變問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注創新互聯成都網站設計公司行業資訊頻道了解更多相關知識。

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享題目:HTML5canvas怎么繪制動態徑向漸變-創新互聯
文章來源:http://m.2m8n56k.cn/article16/dccpdg.html

成都網站建設公司_創新互聯,為您提供服務器托管ChatGPT網站策劃微信小程序網站內鏈定制網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都做網站
主站蜘蛛池模板: 国产精品黄在线观看免费软件 | 韩国一级免费视频 | 国产亚洲一欧美一区二区三区 | 欧美一级亚洲一级 | 韩日黄色 | 久久不见久久见免费影院www日本 | 国产一级毛片国语版 | 广东毛片 | 美女视频网站黄色 | 国产大片中文字幕在线观看 | 高清精品女厕在线观看 | 成年人视频在线免费看 | 一区二区在线欧美日韩中文 | 男女性高爱潮免费网站 | 亚洲精品久久久久久久久久久网站 | 一本久道久久综合婷婷 | 成 人免费视频l免费观看 | 一本一本久久a久久精品综合麻豆 | 亚洲综合欧美综合 | 国产日韩在线播放 | 欧美精品午夜 | 欧美大片国产在线永久播放 | 香港经典a毛片免费观看爽爽影院 | 国产亚洲精品久久久久久久网站 | 欧美视频一区二区三区四区 | 日韩免费a级在线观看 | 久久99久久成人免费播放 | 欧美成视频无需播放器 | 自拍理论片| 久久久国产一区二区三区丝袜 | 天堂av影院 | 成人免费在线播放视频 | 亚洲国产精品久久网午夜 | 亚洲成a人片在线观看中文!!! | 爱福利极品盛宴 | 国产在线拍揄自揄视精品不卡 | 亚洲视频免费 | 日本xxxb孕交 | 国产美女做爰免费视频网址 | 国产片在线观看狂喷潮bt天堂 | 那种视频在线观看 |