前端 Canvas 绘画 总结

news/2024/11/8 23:50:46 标签: 前端

目录

一、使用案例

1、基础使用案例

2、基本案例改为直接JS实现

二、相关资料

1、API教程文档

2、炫酷案例


一、使用案例

1、基础使用案例

使用Canvas的基本步骤:

1、需要一个canvas标签

2、需要获取 画笔 对象

3、使用canvas提供的api进行绘图

<!-- canvas和其他元素不一样,需要设置属性的方式来设置宽和高,不然会有问题 -->
<canvas width="600" height="400" id="canvas01"></canvas>
    //1、获取canvas (画布) 标签
    const canvas=document.getElementById("canvas01")
    //2、获取context (画笔) 对象
    const context=canvas.getContext("2d")
    //3、画出自己想要的图形
    //画一个长方形,有专门的api,fillRect(x,y,width,height)
    context.fillRect(100,100,200,200)

实现效果:绘制出一个矩形

2、基本案例改为直接JS实现

     //1、创建canvas (画布)
    const canvas=document.createElement("canvas")
    //设置宽高
    canvas.height=400
    canvas.width=600
    document.body.append(canvas)

    //2、获取context (画笔) 对象
    const context=canvas.getContext("2d")

    //3、画出自己想要的图形
    //画一个长方形,有专门的api,fillRect(x,y,width,height)
    context.fillRect(100,100,150,100)

实现效果:同样绘制出一个矩形

注:Canvas的宽高需要通过属性来设置,尽量不要使用CSS来设置。

二、相关资料

1、API教程文档

学习 HTML5 Canvas 这一篇文章就够了 | 菜鸟教程

2、炫酷案例

超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等 - 简书


http://www.niftyadmin.cn/n/5744576.html

相关文章

HTB:Perfection[WriteUP]

目录 连接至HTB服务器并启动靶机 1.What version of OpenSSH is running? 使用nmap对靶机TCP端口进行开放扫描 2.What programming language is the web application written in? 使用浏览器访问靶机80端口页面&#xff0c;并通过Wappalyzer查看页面脚本语言 3.Which e…

基础算法练习--滑动窗口(已完结)

算法介绍 滑动窗口算法来自tcp协议的一种特性,它的高效使得其也变成了算法题的一种重要考点.滑动窗口的实现实际上也是通过两个指针前后遍历集合实现,但是因为它有固定的解题格式,我将其单独做成一个篇章. 滑动窗口的解题格式: 首先,定义两个指针left和right,与双指针不同的…

html的week控件 获取周(星期)的第一天(周一)和最后一天(周日)

html的week控件 获取周(星期)的第一天(周一)和最后一天(周日) <input type"week" id"week" class"my-css" value"ViewBag.DefaultWeek" /><script> function PageList() { var dateStrin…

理解Web登录机制:会话管理与跟踪技术解析(一)

在这篇博客中&#xff0c;我们将深入探讨登录校验、会话技术和会话跟踪技术的基本概念、实现原理及其在Web应用中的应用。我们将介绍常见的会话跟踪技术&#xff0c;如Cookies、Session&#xff0c;并讨论它们的优缺点。同时&#xff0c;我们也会涉及如何使用现有的技术栈来实现…

MySQL 到 ClickHouse 数据同步优化(三)

简述 本文主要介绍 CloudCanal 如何将关系型数据库中数据同步到 ClickHouse&#xff0c;默认使用 ReplacingMergeTree 作为 ClickHouse 表引擎&#xff0c;链路特点包括&#xff1a; 新增 _version、_sign 字段&#xff0c;以便 ClickHouse 准确合并。DML 操作均以 INSERT 写…

量化研究--年化57%全球动量模型策略回测,学习使用

文章声明:本内容为个人的业余研究&#xff0c;和任何单位&#xff0c;机构没有关系&#xff0c;文章出现的股票代码&#xff0c;全部只是测试例子&#xff0c;不做投资参考&#xff0c;投资有风险&#xff0c;代码学习使用&#xff0c;不做商业用途 本文利用全球动量模型策略回…

SpringBoot整合Liquibase对数据库管理和迁移

简介 Liquibase是一个用于用于跟踪、管理和应用数据库变化的开源工具&#xff0c;通过日志文件(changelog)的形式记录数据库的变更(changeset)&#xff0c;然后执行日志文件中的修改&#xff0c;将数据库更新或回滚(rollback)到一致的状态。它的目标是提供一种数据库类型无关的…

Kafka面试题 part-1

一、kafka消息发送的流程&#xff1f; 发送原理&#xff1a; 在消息发送的过程中&#xff0c;涉及到了两个线程——main 线程和 Sender 线程。在 main 线程中创建了一个双端队列 RecordAccumulator。main 线程将消息发送给 RecordAccumulator&#xff0c;Sender 线程不断从 R…