HTML5 Canvas

1: canvas 标签是使用js 在上面绘制图形以及动画。
2:属性 width height 设置canvas 的大小 和css不一样 设置的是canvas 画布的大小

var canvas = document.querySelector("#canvas");
//设置canvas 画布大小
canvas.width = 700;
canvas.height = 400;

3:设置canvas的模型为2d模型

var context = canvas.getContext("2d");

绘制矩形

 //1设置图    形填充的样式
 context.fillStyle="#e30000";
 //2绘制一个矩形
 context.fillRect(0,0,100,50);
 //context.fill()//是填充点先路径的

绘制圆弧

 context.beginPath(); //开始路径
 context.fillStyle="green";
 context.arc(350,200,100,0,Math.PI*2,true);
 context.stroke();//绘制描边的
 context.fill();//使用样式填充圆的
 context.closePath();//闭合路径

绘制线条

 context.beginPath();
 context.strokeStyle="red";//设置描边色
 context.fillStyle="red";
 context.moveTo(0,200);//起始点
 context.lineTo(200,200);//移动点
 context.lineTo(30,350);
 context.lineTo(100,130);
 context.lineTo(170,350);
 context.lineTo(0,200);
 context.stroke();//设置线描边
 context.fill();
 context.closePath();

绘制基本的弧形

 context.beginPath();
 context.strokeStyle="red";//设置描边色
 context.moveTo(500,300);//起始点
 //弧
 context.arcTo(600,250,66 0,300,30);
 context.lineTo(700,300);//移动点
 context.stroke();//设置线描边
 context.closePath();

绘制线性渐变

context.beginPath();
var line=context.createLinearGradient(200,100,200,200);
//添加线性渐变的颜色
line.addColorStop(0,"blue");
line.addColorStop(0.2,"red");
line.addColorStop(0.4,"green");
line.addColorStop(0.6,"orange");
line.addColorStop(0.8,"yellow");
line.addColorStop(1,"pink");
context.fillStyle=line;
context.fillRect(100,100,200,100);
context.closePath();

绘制圆形渐变

 context.beginPath();
 var arcgradient=context.createRadialGradient(350,200,10,350,200,100);
 arcgradient.addColorStop(0,"blue");
 arcgradient.addColorStop(0.2,"red");
 arcgradient.addColorStop(0.4,"green");
 arcgradient.addColorStop(0.6,"orange");
 arcgradient.addColorStop(0.8,"yellow");
 arcgradient.addColorStop(1,"pink");
 context.fillStyle=arcgradient;
 context.arc(350,200,100,0,Math.PI*2,true);
 context.fill();
 context.closePath();

清除绘制的区域

 context.clearRect(330,180,40,40);

绘制图片

    context.beginPath();
    var image=new Image();
    image.src="https://fc3tn.baidu.com/it/u=3025909226,1763324618&fm=202&src=bqdata";
    context.drawImage(image,0,0,700,400);

绘制的时候剪裁

 context.moveTo(500,200);
 context.lineTo(530,200);
 context.arcTo(550,160,570,200,20);
 context.lineTo(570,200);
 context.lineTo(600,200);
 context.lineTo(600,300);
 context.lineTo(500,300);
 context.lineTo(500,200);
 context.clip();
 context.fillStyle="#fff";
 context.fill()
 context.strokeStyle="red";
 context.stroke();
 context.closePath();

绘制文字

 var line=context.createLinearGradient(200,100,300,150);
 //添加线性渐变的颜色
 line.addColorStop(0,"blue");
 line.addColorStop(0.2,"red");
 line.addColorStop(0.4,"green");
 line.addColorStop(0.6,"orange");
 line.addColorStop(0.8,"yellow");
 line.addColorStop(1,"pink");
 context.font="30px SimSun, Songti SC";
 context.shadowColor="pink";
 context.shadowBlur=2;
 context.shadowOffsetX=10;
 context.shadowOffsetY=10;
 context.fillStyle=line;
 context.fillText("Canvas",200,100,200);

绘制线条

context.beginPath();
context.lineWidth = 10;
context.strokeStyle = "blue";//设置描边色
context.fillStyle = "red";
context.moveTo(0, 200);//起始点
context.lineTo(200, 200);//移动点
context.lineTo(30, 350);
context.lineTo(100, 130);
context.lineTo(170, 350);
context.lineTo(0, 200);
context.stroke();//设置线描边
context.fill();
context.save();//保存

//使用restore  取出
context.restore();
context.fill();
context.stroke();
context.closePath();
weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
weixin102旅游社交微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值