`
isiqi
  • 浏览: 16028716 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Html5 Canvas初探学习笔记(4) -清除屏幕

 
阅读更多
小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man

有些时候,我们需要清除部分或者全部的屏幕,类似于j2mesetcilp函数,在html

canvas中有两种方法可以清除屏幕,一种是clearRect和整个屏幕宽度高度技巧。不同的是clearRect可以实现部分的屏幕的清除也可以实现清除全屏的方法,而重设屏幕宽高只能清除部分的屏幕。

如下代码就把整个圆清除了四分之一的圆:

首先画一个整个的圆,然后清除一个正方形。效果如下:


如果使用如下语句,就会清除屏幕:

context.clearRect(0,0,canvas.width,canvas.height);

另外有一种方法就是重新设置canvaswidthheight。代码如下:

varwidth=canvas.width;

varheight=canvas.height;

canvas.width=width;

canvas.height=height;

这样做也可以清除屏幕,但是这样做有个缺点,就是所有的状态值都会回到默认值(颜色样式,线宽等),不会保留。

采用如下代码可以设置浏览器全屏,就是根据document.body获得浏览器宽高在设置


<linkhref="canvas.css"rel="stylesheet"type="text/css">

这句话是引入csscss的作用是忽略浏览器的留白和边界,css的代码如下:

*{margin:0;padding:0}

html,body{height:100%;width:100%}

canvas{display:block;}

为了当屏幕大小改变时我们的这个设置依然是全屏,我们在window.addEventListener("load",paint,true);后加上这么一句:window.addEventListener("resize",paint,true);也就是当我们改变浏览器大小时canvas也随之改变,当然我们作画的东西也要重画一遍。

如有错误,希望大家多多指正

下一篇继续研究绘制的高级功能


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics