首页 > 代码库 > HTML5图形绘制

HTML5图形绘制

要在HTML5中绘制图形,首先要放置一个canvas元素

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

canvas的代码实际上是放在JavaScript脚本中的,因此,要先获得该元素的id

var canvas =document.getElementById("canvas");
if (canvas==null) return false;

var context=canvas.getContext("2d");
context.fillStyle="#eeeeff";
context.fillRect(0,0,400,300);
context.fillStyle="red";
context.strokeStyle="blue";
context.lineWidth=1;
context.fillRect(50,50,1001,100);
context.strokeRect(50,50,100,100);

全部代码

<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8"/>
   <title>example for html5</title>
   
   
</head>

<body>

<div class="showmore">

   <a title="这是一个提示" id="tipping">tips</a>
   <canvas id="canvas" width="400" height="300"/>
</div>
<script type="text/javascript">

var canvas =document.getElementById("canvas");
if (canvas==null) alert("null");

var context=canvas.getContext(2d);
context.fillStyle="#eeeeff";
context.fillRect(0,0,400,300);
context.fillStyle="red";
context.strokeStyle="blue";
context.lineWidth=1;
context.fillRect(50,50,100,100);
context.strokeRect(50,50,100,100);

</script>


</body>
</html>

最近也在学习jQuery,那么在jQuery中如何绘制canvas呢?要注意的是,jQuery对象不能直接使用canvas中的方法,因此首先要把jQuery对象转化成dom对象,才能进行绘图,当然,代码其实没有简便多少

<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8"/>
   <title>example for html5</title>
   <script src="jquery.js" type="text/javascript"></script>
   
</head>

<body>

<div class="showmore">

   <a title="这是一个提示" id="tipping">tips</a>
   <canvas id="canvas" width="400" height="300"/>
</div>
<script type="text/javascript">
$(document).ready(function(){
var canvas=$("#canvas")[0];
if (canvas==null) alert("null");

var context=canvas.getContext(2d);
context.fillStyle="#eeeeff";
context.fillRect(0,0,400,300);
context.fillStyle="red";
context.strokeStyle="blue";
context.lineWidth=1;
context.fillRect(50,50,100,100);
context.strokeRect(50,50,100,100);
});

</script>


</body>
</html>

 绘制圆形

for(var i=0;i<8;i++){
context.beginPath();
context.arc(25*i,25*i,i*10,0,Math.PI*2,true);
context.closePath();
context.fillStyle=‘rgba(255,0,0,0.25)‘;
context.fill();
}

技术分享

绘制直线

context.beginPath();                      //路径开始点,设置这个点主要是为了防止后续染色影响前面部分
context.strokeStyle="black";              //设置直线的粗细和颜色
context.lineWidth=10;
context.moveTo(20,20);                    //设置直线起点,终点
context.lineTo(30,100);
context.stroke();                         //绘制

载入图片

var image=new Image();
image.src="http://www.mamicode.com/1.png";
image.onload=function(){
context.drawImage(image,20,20,20,20);    //分别是图形对象,绘制起点x,y,图像大小w,h。
};

 

HTML5图形绘制