HTMLcanvas矩形阵雨


本文摘自PHP中文网,作者大家讲道理,侵删。

font-size: 16px">HTMLcanvas矩形阵雨

  • 在画布上执行

  • 获取制图环境

  • 全屏获取屏幕宽度和屏幕高度

  • 确定每个文字的宽度 以确定列

  • 循环输出

  • 定时器调用

HTML 部分


1

<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>HTMLcanvas矩形阵雨</title></head><body><canvas id="c">您的浏览器不支持 请升级</canvas></body></html>

CSS 部分


1

2

3

4

5

<style type="text/css">/* 基本的复位 */* {

    margin:0;

    padding:0;}/* 给body一个背景 使画布看起来更清晰 */body {

    background-color:#000;}canvas {

    display:block;}</style>


Javascript 部分


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<script type="text/jscript">

 var c = document.getElementById("c"); //获取id

 var ctx = c.getContext("2d"); //2d制图

 c.width = window.innerWidth; //获取屏幕宽度 c.height = window.innerHeight; //获取屏幕高度

  

 var chinese = "abcdefghijklmnopqrstuvwxyz"; //canvas 阵雨文字 chinese = chinese.split(""); //split 分离

  

 var font_size = 10; //字体大小 10px

 var columns = c.width/font_size;

 //获取列 屏幕宽度/字体大小

 var drops = []; // drop 落下 新建数组

 for(n=0; n < columns; n++) //控制列输出     drops[n] = 1; //draw

 function draw(){

     ctx.fillStyle = "rgba(0,0,0,0.05)"; //绘制矩形     ctx.fillRect(0,0,c.width,c.height); //以(0,0)为坐标 画制矩形    

     ctx.fillStyle = "#0F0"; //绿色字体     ctx.font = font_size + "px arial"; //以像素为单位 宋体

           

     for(var i=0; i< drops.length; i++)

     {         var text = chinese[Math.floor(Math.random()*chinese.length)];         // Math.floor 对浮点数向下取整         ctx.fillText(text, i*font_size, drops[i]*font_size);         // 规定在画布上输出的文本 开始绘制文本的x坐标 y坐标

         if(drops[i]*font_size > c.height && Math.random() > 0.975)         // 如果下落的文本大于屏幕高度 或者 随机数大于0.975             drops[i] = 0;         // 重置下落         drops[i]++;         // 继续执行     }

 }

 setInterval(draw,33); //33 执行一次draw()</script>

此文到此结束

我始终相信这个世界上充满了美好与希望 加油!

以上就是HTMLcanvas矩形阵雨的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

canvas中普通动效与粒子动效的实现 方法介绍(代码示例)

canvas基础的学习

html5 canvas实现文本对齐的代码总结

基于 html5 canvas 实现的文字动画特效

html5 canvas如何绘制动态径向渐变

canvas如何设置阴影?canvas设置阴影的方法

canvas实现九宫格心形拼图的方法(附代码)

canvas中使用clip()函数裁剪方法

canvas画直角坐标系

html5 canvas粒子形成下雪背景的效果

更多相关阅读请进入《canvas》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...