网络编程
位置:首页>> 网络编程>> JavaScript>> JavaScript+canvas实现七色板效果实例

JavaScript+canvas实现七色板效果实例

作者:The-duke  发布时间:2023-08-09 09:48:10 

标签:JavaScript,canvas

本文实例讲述了JavaScript+canvas实现七色板效果。分享给大家供大家参考,具体如下:

效果图如下:

JavaScript+canvas实现七色板效果实例

html:


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

css:


html,body{margin: 0;padding: 0}
.canvas{display: block; margin-left:auto;margin-right:auto;margin-top: 50px;}

javascript:


var disk = [
   {
     area:[{x:0,y:0},{x:600,y:0},{x:300,y:300}],
     color:"#CBF263"
   },
   {
     area:[{x:0,y:0},{x:0,y:600},{x:300,y:300}],
     color:"#5CB6D0"
   },
   {
     area:[{x:0,y:600},{x:300,y:600},{x:150,y:450}],
     color:"#FE9CCD"
   },
   {
     area:[{x:150,y:450},{x:300,y:300},{x:450,y:450},{x:300,y:600}],
     color:"#A696C3"
   },
   {
     area:[{x:300,y:600},{x:600,y:600},{x:600,y:300}],
     color:"#FBC421"
   },
   {
     area:[{x:600,y:300},{x:600,y:0},{x:450,y:150},{x:450,y:450}],
     color:"#FF5061"
   },
   {
     area:[{x:450,y:450},{x:450,y:150},{x:300,y:300}],
     color:"#FDEA11"
   }
]
window.onload = function(){
   var canvasDom = document.getElementById("canvas");
   var ctx = canvasDom.getContext("2d");
   drawDisk(disk,ctx)
}
function drawDisk(disk,ctx){
   for(var i = 0;i<disk.length;i++){
     ctx.beginPath();
     ctx.moveTo(disk[i].area[0].x,disk[i].area[0].y);
     for(var j = 1;j<disk[i]["area"].length;j++){
       ctx.lineTo(disk[i].area[j].x,disk[i].area[j].y);
     }
     ctx.closePath();
     ctx.fillStyle = disk[i]["color"];
     ctx.fill();
   }
}

希望本文所述对大家JavaScript程序设计有所帮助。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com