js+html5實現canvas繪制橢圓形圖案的方法
來源:易賢網 閱讀:1155 次 日期:2016-06-25 13:43:54
溫馨提示:易賢網小編為您整理了“js+html5實現canvas繪制橢圓形圖案的方法”,方便廣大網友查閱!

這篇文章主要介紹了js+html5實現canvas繪制橢圓形圖案的方法,涉及html5圖形繪制的基礎技巧,感興趣的朋友可以參考一下

本文實例講述了js+html5實現canvas繪制橢圓形圖案的方法,HTML5 canvas 沒有畫橢圓的方法,以下代碼可以畫出橢圓,分享給大家供大家參考,具體實現方法如下:

1、在一個隱式的畫布 (將 其 CSS 定義成:display:none; ) 上畫園。

2、將隱式畫布的影像,以不同的寬高比值,畫在另一個顯式的畫布,以使園變成橢圓。

3、進而,加進動畫功能。

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>測試顏色背景</title>

<script>

var ticker=0;

var col = new Array("#000000","#A52A2A","#B8860B","pink","green","yellow","red","orange","#BB008B","#8B0000");

function drawBackground(){

var canvasHide=document.getElementById("hide"); //隱藏的畫布

var g=canvasHide.getContext("2d"); //找出隱藏畫布 hide 的畫筆 g 

g.clearRect(0,0,1200,800); //清理隱藏畫布

var i=0;

do { //畫 不同顏色 依次同心發(fā)散的園

g.beginPath();

var grd=g.createRadialGradient(300,300,300-i*25, 300,300,265-i*25);

grd.addColorStop(0,col[(0+i+ticker)%col.length]);

grd.addColorStop(1,col[(1+i+ticker)%col.length]);

g.fillStyle=grd;

g.arc(300,300,300-i*25,0,2*Math.PI);

g.fill();

i++;

} while(i<11);

//找出顯式畫布 myCanvas 的畫筆 gg 

var gg=document.getElementById("myCanvas").getContext("2d");

gg.clearRect(0,0,myCanvas.width,myCanvas.height); //清理顯式畫布

/* 將隱式畫布 hide 的園形圖像,

 * 以 寬 600, 高 300 的比例,

 * 畫到顯式畫布 myCanvas,

 * 結果,隱式畫布 hide 的園形圖像,在顯式畫布 myCanvas 上 成了橢圓

 */

gg.drawImage(canvasHide,0,0,600,300); 

ticker++;

}

function preperation(){

setInterval('drawBackground()',1000);

 }

</script>

<style>

#myCanvas{

 position:absolute;

 left:0px;

 top:0px;

}

#hide{

 display:none;

}

</style>

</head>

<body onLoad="preperation()">

<canvas id="myCanvas" width="600" height="400" ></canvas>

<canvas id="hide" width="600" height="600" ></canvas>

</body>

</html>

希望本文所述對大家的web程序設計有所幫助。

更多信息請查看網絡編程

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網