HTML5学习笔记6-- Canvas
绘制普通直线,先看效果图:
实现代码如下:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <script> function drawGraph(id) { var canvas=document.getElementById(id); var context=canvas.getContext("2d"); context.fillStyle="#CC00FF" //最外层canvas颜色 context.fillRect(0,0,300,300)//最外层canvas区域 context.beginPath() context.fillStyle="#008B8B"//填充颜色 context.strokeStyle="#FFFF00"//线的颜色 var dx=150 var dy=150 var s=100 var dig=Math.PI/15*11 for(var i=0;i<30;i++) { var x=Math.sin(i*dig) var y=Math.cos(i*dig) context.lineTo(dx+x*s,dy+y*s) } context.closePath()//关闭路径 context.fill()//填充颜色 context.stroke() } </script> </head> <body onload="drawGraph('canvasId')"> <canvas id="canvasId" width="300" height="400"></canvas> </body> </html>
绘制贝塞尔曲线
效果图如下:
代码如下:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <script> function drawGraph(id) { var canvas=document.getElementById(id); var context=canvas.getContext("2d"); context.fillStyle="#CC00FF" context.fillRect(0,0,300,300) context.beginPath() context.fillStyle="#008B8B" context.strokeStyle="#FFFF00" var dx=150 var dy=150 var s=100 var dig=Math.PI/15*11 context.moveTo(dx,dy) for(var i=0;i<60;i++) { var x=Math.sin(i*dig) var y=Math.cos(i*dig) context.bezierCurveTo(dx+x*s,dy+y*s-100,dx+x*s+100,dy+y*s,dx+x*s,dy+y*s)//贝塞尔绘制函数 } context.closePath() context.fill() context.stroke() } </script> </head> <body onload="drawGraph('canvasId')"> <canvas id="canvasId" width="300" height="400"></canvas> </body> </html>
关于了解的html5的基本知识点就到这里了,毕竟项目中没有去使用,出于个人闲来无事有个大体了解.并且都很基本,其实这些基本的知识点感觉没必要花费这么多精力去关注,这个时间个人感觉花的太多,完全可以找个小demo去研究,这样驱动的去学习效果会更好,先到这里了,准备投入到下一阶段其他开发知识点的学习中.
作者:tuohaibei
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利.
如果您觉得文章对您有帮助,可以点击文章右下角"推荐".您的鼓励是作者坚持原创和持续写作的最大动力!
标签:
HTML5
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?