用canvas 画波形图-初稿1

用canvas 画波形图-初稿1

下面是效果图

canvas 模拟波形-效果图


================废话不多说,直接上代码=====================

// An highlighted block
<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>canvas</title> 
</head>
<body>

<canvas id="myCanvas" width="1400" height="400" style="border:1px solid #c3c3c3;">
您的浏览器不支持 HTML5 canvas 标签。
</canvas>

<script>

var i = 0;
var j = 0;
var itv = setInterval(function(){
	i++;
	if(i>=1){
		j++;
		// console.log("this is math==> " + tmp_height);
		i = 0;
		//开始画图吧
		var global_width  = 1400;
		var global_height = 400;
		var c             = document.getElementById("myCanvas");
		var ctx           = c.getContext("2d");
		ctx.fillStyle     = "#0066FF";//#FF0000
		var tmp_height    =  parseInt(Math.random() * global_height/2 );

		//线条的宽度
		let tmp_width    = 1;
		//两个线条之间的宽度
		let line_between = 2;

		//画出一条横线出来
		ctx.beginPath();
		let middle_line_height = 2;
		let middle_line_y      = (global_height - middle_line_height)/2;
		ctx.lineWidth          = middle_line_height;
		ctx.strokeStyle        = "red"; // 红色路径
		ctx.moveTo(0, middle_line_y);
		ctx.lineTo(global_width, middle_line_y);
		ctx.stroke(); // 进行绘制

		//这里需要判断图像是否在画布外头
		if(line_between*(j-1) >= global_width){
			//满了则进行画图清空操作
			ctx.clearRect(0, 0, global_width, global_height);
			console.log("这里检测到画布满了");
			j=0;
		}
		//这里是在计算线条起始(x,y)坐标,然后放入到画布中
		ctx.fillRect(line_between*(j-1), (global_height-tmp_height)/2, tmp_width, tmp_height);
	}
	
});
</script>

</body>
</html>

  可以这么看效果,首先在本地桌面新建一个canvas.html,【名字你自己定义就好】,其次将代码粘贴进去,然后保存,最后最重要的一步,直接拖动canvas.html文件到任意浏览器中【IE暂时不知道是否好用,我这边没有尝试过】,然后就能看到canvas 画布中跳动的波形线条



猜你喜欢

转载自blog.csdn.net/weixin_42152696/article/details/90766680