当前位置: 首页 > news >正文

黑客帝国代码雨

黑客帝国代码雨奉上,之前一直想写,但一直没抽出时间来,今天把他写了,也算了了装心事

效果图如下
在这里插入图片描述
原理就不讲了,代码写的很清楚而且不长
有不懂的评论区问我就好

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>canvas代码雨</title><style>* {padding: 0;margin: 0;}canvas {display: block;width: 100vw;height: 100vh;background-color: black;}</style>
</head><body><canvas></canvas><script>const canvas = document.querySelector('canvas');const ctx = canvas.getContext('2d');function init() {canvas.width = window.innerWidth * devicePixelRatiocanvas.height = window.innerHeight * devicePixelRatio}init()const fontSize = 10 * devicePixelRatioctx.font = fontSize + 'px Microsoft YaHei'const column = Math.floor(canvas.width / fontSize)const charIndex = new Array(column).fill(0)function draw() {ctx.fillStyle = 'rgba(0,0,0,0.1)'ctx.fillRect(0, 0, canvas.width, canvas.height)ctx.fillStyle = '#0f0'ctx.textBaseline = 'top'for (let i = 0; i < column; i++) {const text = getRandomChat()const x = i * fontSizeconst y = charIndex[i] * fontSizectx.fillText(text, x, y)if (y > canvas.height && Math.random() > 0.99) {charIndex[i] = 0} else {charIndex[i]++}}}function getRandomChat() {const str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'return str.charAt(Math.floor(Math.random() * str.length))}draw()setInterval(draw, 30)</script>
</body></html>
http://www.lryc.cn/news/184429.html

相关文章:

  • 基于SpringBoot的植物健康系统
  • Kettle连接数据库[MySQL]报错
  • Postman接口测试学习之常用断言
  • 自动化机器学习AutoML之flaml:利用flaml框架自动寻找最优算法及其对应最佳参数python
  • 支付宝sdk商户私钥 如何生成?
  • Linux之epoll理解
  • 龟速乘 - a * b爆ll且模数很大时的计算方法
  • 计算机网络笔记3 数据链路层
  • 如何实现矩阵的重采样问题
  • Spring-事务管理-加强
  • Minecraft个人服务器搭建自己的皮肤站并实现外置登录更换自定义皮肤组件
  • 解决ubuntu中没有网络连接的图标
  • 数据结构基本概念-Java常用算法
  • 流程图设计制作都有哪些好用的工具
  • 2023-10-7
  • 【java源码】二甲医院his系统全套源码 云HIS系统源码
  • LRU 缓存 -- 哈希链表
  • DWC数字世界大会先导论坛将于10月13日在宁波举办 | 数字技术赋能世界可持续发展
  • Springboot实现登录功能(token、redis、登录拦截器、全局异常处理)
  • AI工程化—— 如何让AI在企业多快好省的落地?
  • mysqld_multi测试
  • MDC方式实现简单链路追踪
  • Linux深度学习:除基本命令操作外的实用操作
  • app对接广告变现平台:影响app广告单价的4大因素
  • 【数字化转型】10大数字化转型能力成熟度模型01(IOMM)
  • 2023腾讯云轻量应用服务器和普通服务器有什么区别?
  • SSL证书是什么?1分钟get
  • 3D打印机升级killpper
  • 源码编译dotnetcore的runtime
  • 11个在线免费调整图像大小而不会降低质量工具