canvas学习笔记(1)

canvas理解

HTML5 标签用于绘制图像(通过脚本,通常是 JavaScript)。
不过, 元素本身并没有绘制能力(它仅仅是图形的容器) - 您必须使用脚本来完成实际的绘图任务。
getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属性。

虽然之前对canvas有一定的了解,但是并没有专门去系统化的学习过这一门技术。所以从基础学起

基础知识小节(颜色阴影,元素位置渲染)
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<meta name="viewport" content="width=device-width, initial-scale=1.0">
		<meta http-equiv="X-UA-Compatible" content="ie=edge">
		<title>Document</title>
	</head>
	<body>
		<canvas id="canvas1" width="300" height="150" style="border:1px solid #d3d3d3;">
			当前不支持canvas
		</canvas>
		<script>
			//画板函数
			function draw() {
				//获取canvas 
				const canvas = document.getElementById('canvas1');
				//检测支持性
				if (!canvas.getContext) return;
				//获取2d上下文对象
				const ctx = canvas.getContext('2d');
				//设置阴影大小 设置或返回用于阴影的模糊级别
				ctx.shadowBlur = 10;
				//设置或返回阴影距形状的水平距离
				ctx.shadowOffsetX = 10;
				//设置或返回阴影距形状的数值距离
				ctx.shadowOffsetY = 10;
				//设置阴影颜色 设置或返回用于阴影的颜色
				ctx.shadowColor = "black";
				//放射状/圆形渐变进行填充: x起 y起 半径始 x终 y终 半径终
				var grd=ctx.createRadialGradient(75,50,5,90,60,100);
				grd.addColorStop(0,"orange");
				grd.addColorStop(0.5,"red");
				grd.addColorStop(1,"pink");
				//创建线性渐变(用在画布内容上) x起 y起 x终 y终
				var my_gradient = ctx.createLinearGradient(0, 0, 170, 0);
				//0-1过程 颜色
				my_gradient.addColorStop(0, "orange");
				my_gradient.addColorStop(0.5, "yellow");
				my_gradient.addColorStop(1, "red");
				//设置或返回用于填充绘画的颜色、渐变或模式
				ctx.fillStyle = grd;
				// ctx.fillStyle = my_gradient;
				//绘制“被填充”的矩形 x y width height

				ctx.fillRect(20, 20, 100, 70);
			}
			draw();
		</script>
	</body>
</html>

学习中…后续更新

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值