欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

HTML5 画布canvas使用方法_html5教程技巧

程序员文章站 2022-03-05 20:08:19
...
canvas 元素使用 JavaScript 在网页上绘制图像,本身是没有绘图能力。

canvas 是一个矩形区域,可以控制其每一像素。

canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

下面来做几个示例:

1、填充画布

JavaScript Code复制内容到剪贴板
  1. "myCanvas" width="200" height="100" style="border:1px solid red;">
  2. >
  3. var c=document.getElementById("myCanvas");
  4. var cxt=c.getContext("2d");
  5. cxt.fillStyle="#ccc";
  6. cxt.fillRect(5,10,150,60); //x,y,x,y

执行如下:

HTML5 画布canvas使用方法_html5教程技巧

2、获取坐标

JavaScript Code复制内容到剪贴板
  1. >
  2. function cnvs_getCoordinates(e){
  3. x=e.clientX;
  4. y=e.clientY;
  5. document.getElementById("xycoordinates").innerHTML="Coordinates: (" + x + "," + y + ")"; }
  6. function cnvs_clearCoordinates(){
  7. document.getElementById("xycoordinates").innerHTML="";}
XML/HTML Code复制内容到剪贴板
  1. div id="coordiv" style="float:left;width:199px;height:99px;border:1px solid #c3c3c3" onmousemove="cnvs_getCoordinates(event)" onmouseout="cnvs_clearCoordinates()">div>
  2. div id="xycoordinates">div>

执行如下:

HTML5 画布canvas使用方法_html5教程技巧

3、绘制线条、图形

1)、绘制正方形如下:

JavaScript Code复制内容到剪贴板
  1. "myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
  2. 您的浏览器不支持 canvas 标签.
  3. >
  4. var c=document.getElementById("myCanvas");
  5. var cxt=c.getContext("2d");
  6. cxt.moveTo(10,10); //x,y 起点
  7. cxt.lineTo(10,50); //x,y
  8. cxt.lineTo(50,50); //x,y
  9. cxt.lineTo(50,10); //x,y
  10. cxt.lineTo(10,10); //x,y
  11. cxt.stroke();

执行如下

HTML5 画布canvas使用方法_html5教程技巧

2)、绘制圆形如下:

JavaScript Code复制内容到剪贴板
  1. "myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
  2. 你的浏览器不支持canvas
  3. >
  4. var c=document.getElementById("myCanvas");
  5. var cxt=c.getContext("2d");
  6. cxt.fillStyle="#ccc";
  7. cxt.beginPath();
  8. cxt.arc(20,20,10,0,Math.PI*2,true);
  9. cxt.closePath();
  10. cxt.fill();

执行如下:

HTML5 画布canvas使用方法_html5教程技巧

4、绘制渐变

JavaScript Code复制内容到剪贴板
  1. "myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
  2. 您的浏览器不支持 canvas 标签.
  3. >
  4. var c=document.getElementById("myCanvas");
  5. var cxt=c.getContext("2d");
  6. var grd=cxt.createLinearGradient(0,0,175,50);
  7. grd.addColorStop(0,"#000000"); //黑
  8. grd.addColorStop(1,"#FFFFFF"); //白
  9. cxt.fillStyle=grd;
  10. cxt.fillRect(5,10,175,50);//x,y,x,y

执行如下:

HTML5 画布canvas使用方法_html5教程技巧

5、图片

JavaScript Code复制内容到剪贴板
  1. "myCanvas" width="300" height="200" style="border:1px solid #c3c3c3;">
  2. 您的浏览器不支持 canvas 标签.
  3. >
  4. var c=document.getElementById("myCanvas");
  5. var cxt=c.getContext("2d");
  6. var img=new Image()
  7. img.src="aa.png"
  8. cxt.drawImage(img,10,20); //x,y

执行如下:

HTML5 画布canvas使用方法_html5教程技巧

以上就是本文的全部内容,希望对大家的学习有所帮助。

原文:http://www.cnblogs.com/LoveSuk/archive/2016/03/17/5288368.html