歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> HTML5中用canvas繪制徑向漸變

HTML5中用canvas繪制徑向漸變

日期:2017/3/1 9:43:27   编辑:Linux編程

HTML5中canvas元素除了繪制線性漸變以外,還可以繪制徑向漸變。徑向漸變是指沿著圓形的半徑方向向外進行擴散的漸變方式。比如在描繪太陽是,沿著太陽的半徑方向向外擴散出去的光暈,就是一種徑向漸變。

HTML5移動開發即學即用(雙色) PDF+源碼 http://www.linuxidc.com/Linux/2013-09/90351.htm

HTML5入門學習筆記 http://www.linuxidc.com/Linux/2013-09/90089.htm

HTML5移動Web開發筆記 http://www.linuxidc.com/Linux/2013-09/90088.htm

HTML5 開發中的本地存儲的安全風險 http://www.linuxidc.com/Linux/2013-06/86486.htm

《HTML5與CSS3權威指南》及相配套源碼 http://www.linuxidc.com/Linux/2013-02/79950.htm

關於 HTML5 令人激動的 10 項預測 http://www.linuxidc.com/Linux/2013-02/79917.htm

HTML5與CSS3實戰指南 PDF http://www.linuxidc.com/Linux/2013-02/79910.htm

canvas繪制徑向漸變的腳本文件:

<!DOCTYPE html><head><metacharset="UTF-8"/><script>function draw(id){var canvas = document.getElementById(id);if(canvas ==null)returnfalse;var context = canvas.getContext('2d');var g1 = context.createRadialGradient(400,0,0,400,0,400);
        g1.addColorStop(0.1,'rgb(255,255,0)');
        g1.addColorStop(0.3,'rgb(255,0,255)');
        g1.addColorStop(1,'rgb(0,255,255)');
        context.fillStyle = g1;
        context.fillRect(0,0,400,300);var n =0;var g2 = context.createRadialGradient(250,250,0,250,250,300);
        g2.addColorStop(0.1,'rgba(255,0,0,0.5)');
        g2.addColorStop(0.7,'rgba(255,255,0,0.5)');
        g2.addColorStop(1,'rgba(0,0,255,0.5)');for(var i =0; i <10; i++){
            context.beginPath();
            context.fillStyle = g2;
            context.arc(i *25, i *25, i *10,0,Math.PI *2,true);
            context.closePath();
            context.fill();}}</script></head><bodyonLoad="draw('canvas');"><canvasid="canvas"width="400"height="300"/></body></html>

createRadialGradient() 方法創建一條放射顏色漸變,這個方法創建並返回了一個新的 CanvasGradient 對象,該對象在兩個指定圓的圓周之間放射性地插值顏色。

createLinearGradient(xStart, yStart, radiusStart, xEnd, yEnd, radiusEnd)

xStart, yStart 開始圓的圓心的坐標,radiusStart 開始圓的直徑,xEnd, yEnd 結束圓的圓心的坐標,radiusEnd 結束圓的直徑。

上面的實例中,分別指定了兩個圓的大小和位置。從第一個圓的圓心處像外進行擴散漸變,一直擴散到第二個圓的外輪廓出。

在設定顏色時,與線性漸變相同,使用addColorStop方法進行設定即可。同樣也需要設定0-1之間的浮點數來作為漸變轉折點的偏移量。

Copyright © Linux教程網 All Rights Reserved