HTML5-canvas的使用方法介绍

<canvas>新元素

<canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成.

<canvas> 标签只是图形容器,您必须使用脚本来绘制图形。

你可以通过多种方法使用Canva绘制路径,盒、圆、字符以及添加图像。

  注意: 默认情况下 <canvas> 元素没有边框和内容。

  画方

<!--fillStyle是填充样式,如果不设置fillStyle属性,默认填充色为黑色,fillRect是画一个矩形,参数为X,Y,Width,Height--><!DOCTYPE html><html><head><meta charset=UTF-8 name=author content=赵慧娟><title></title><script src=Scripts/jquery-1.10.2.js?1.1.10></script><script type=text/javascript>$(function(){var canvas=document.getElementById(myCanvas)var ctx=canvas.getContext(2d);
                ctx.fillStyle=deeppink;
                ctx.fillRect(10,10,100,100);
         //ctx.moveTo(0,0);    //定义开始坐标
         //ctx.lineTo(100,100);  //定义结束坐标
         //ctx.stroke();      //绘制线条
            })</script></head><body><canvas id=myCanvas width=100 height=100></canvas></body></html>

运行结果:

  画圆

<!--arc画圆,参数是X,Y,半径,起始角,结束角,顺时针/逆时针(可选)XY指的是圆点的距离--><!DOCTYPE html><html><head><meta charset=UTF-8 name=author content=赵慧娟><title></title><script src=Scripts/jquery-1.10.2.js?1.1.10></script><script type=text/javascript>$(function(){var canvas=document.getElementById(myCanvas)var ctx=canvas.getContext(2d);
                ctx.fillStyle=deeppink;
                ctx.arc(50,50,50,0,2*Math.PI);
                ctx.stroke();
         //ctx.fillText(Hello World,10,50);  //绘制实心字体
         //ctx.strokeText(Hello World,10,50); //绘制空心字体
})
</script><style type=text/css>canvas{border: 1px solid #000;}</style></head><body><canvas id=myCanvas width=100 height=100></canvas></body></html>

运行结果:

  渐变

  createLinearGradient(x,y,x1,y1) - 创建线条渐变

  createRadialGradient(x,y,r,x1,y1,r1) - 创建一个径向/圆渐变

// 创建渐变var grd=ctx.createLinearGradient(0,0,200,0);
grd.addColorStop(0,red);
grd.addColorStop(1,blue); 
// 填充渐变ctx.fillStyle=grd;
ctx.fillRect(10,10,150,80);

运行结果:

  径向/圆渐变

var c=document.getElementById(myCanvas);
var ctx=c.getContext(2d);
 
// 创建渐变
var grd=ctx.createRadialGradient(75,50,5,90,60,100);
grd.addColorStop(0,red);
grd.addColorStop(1,white);
 
// 填充渐变
ctx.fillStyle=grd;
ctx.fillRect(10,10,150,80);

运行结果:

图像

<!DOCTYPE html><html><head><meta charset=UTF-8 name=author content=赵慧娟><title></title><script src=Scripts/jquery-1.10.2.js?1.1.10></script><style type=text/css>canvas{border: 1px solid #000;}#flower{border: 1px solid #000;width: 100px;height: 100px;}</style></head><body><img src=img/a.ico id=flower /><canvas id=myCanvas width=100 height=100></canvas><script type=text/javascript>$(function(){var canvas=document.getElementById(myCanvas)var ctx=canvas.getContext(2d);var img=document.getElementById(flower);
                img.onload=function(){
                    ctx.drawImage(img,20,20,80,80);  //drawImage(对象,X,Y,W,H)}
            })</script></body></html>

运行结果:

(右图为canvas图像)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


HTML5和CSS3实现3D展示商品信息的代码
利用HTML5中的Canvas绘制笑脸的代码
Html5剪切板功能的实现
如何通过HTML5触摸事件实现移动端简易进度条
Html5移动端获奖无缝滚动动画实现
关于HTML5和CSS3实现机器猫的代码
HTML5使用DOM进行自定义控制
使用HTML5 Canvas绘制阴影效果的方法
使用PHP和HTML5 FormData实现无刷新文件上传
如何解决HTML5 虚拟键盘出现挡住输入框的问题
HTML5中div和section以及article的区别分析
html5和CSS 实现禁止IOS长按复制粘贴功能
html5 touch事件实现触屏页面上下滑动
canvas 模拟实现电子彩票刮刮乐的代码
HTML5 Plus 实现手机APP拍照或相册选择图片上传的功能
Android自定义环形LoadingView效果
HTML5 canvas绘制五角星的方法
html5使用html2canvas实现浏览器截图
使用Canvas处理图片的方法介绍
利用Canvas模仿百度贴吧客户端loading小球的方法