HTML5学习笔记(一)canvas画图

 

效果图

 兼容ie的两个js库

<!--[if lte IE 9]>
<script type="text/javascript" src="../excanvas.js"></script>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]
-->

 

画图代码,放在head里

复制代码
function draw(id) {
var ctx = document.getElementById(id).getContext('2d');

// 画渐变背景设置渐变样式
var g1 = ctx.createRadialGradient(200,200,0,200,200,200);
g1.addColorStop(0,'rgb(255,255,255)');
g1.addColorStop(1,'rgb(220,220,220)');
ctx.fillStyle = g1;
ctx.fillRect(0,0,400,400);

// 中心点移动到(200,200)
ctx.translate(200,200);
for (var i=1;i<6;i++){

// 保存当前状态
ctx.save();

// 设置当前颜色
ctx.fillStyle = 'rgb('+(51*i)+','+(255-51*i)+',255)';

for (var j=0;j<i*6;j++)
{
// 旋转
ctx.rotate(Math.PI*2/(i*6));

// 画圆
ctx.beginPath();
ctx.arc(0,i*30,8,0,Math.PI*2,true);
ctx.fill();
}

// 返回上次保存状态
ctx.restore();
}
}
复制代码

 

执行代码

window.onload = function()
{
draw("myCanvas");
}

 

HTML代码

<canvas id="myCanvas" width="400" height="400"></canvas>




posted @   穆乙  阅读(1675)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示