编程笔记 html5&css&js 032 HTML Canvas

编程笔记 html5&css&js 032 HTMLCanvas

  • [一、什么是 HTML Canvas?](#一、什么是 HTML Canvas?)
  • [二、HTML Canvas 可以绘制文本](#二、HTML Canvas 可以绘制文本)
  • [三、HTML Canvas 可以绘制图形](#三、HTML Canvas 可以绘制图形)
  • [四、HTML Canvas 可以动画化](#四、HTML Canvas 可以动画化)
  • [五、HTML Canvas 可以交互](#五、HTML Canvas 可以交互)
  • 练习
  • 小结

Canvas画布,就是可以用来画画的地方,不是用户在浏览器上画图,而是会javascript画图。这区别于直接载入一张图片,是可以根据需要进行绘制。

一、什么是 HTML Canvas?

HTML <canvas> 元素用于通过脚本(通常是 JavaScript)动态地绘制图形。
<canvas> 元素只是图形的容器。您必须使用脚本来绘制实际的图形。

Canvas 有多种方法用于绘制路径、方框、圆形、文本和添加图像。

二、HTML Canvas 可以绘制文本

Canvas 可以绘制彩色文本,还可带动画效果。

三、HTML Canvas 可以绘制图形

Canvas 拥有使用图形和图表进行图形化数据呈现的强大能力。

四、HTML Canvas 可以动画化

Canvas 对象可以移动。一切皆有可能:从简单的弹跳球到复杂的动画。

五、HTML Canvas 可以交互

Canvas 可以响应 JavaScript 事件。

Canvas 可以响应任何用户操作(按键单击、鼠标单击、按钮单击、手指移动)。

HTML Canvas 可用于游戏

Canvas 的动画方法为 HTML 游戏应用程序提供了很多可能性。

html 复制代码
<canvas id="myCanvas" width="200" height="100"></canvas>

<canvas> 元素必须有 id 属性,以便 JavaScript 可以引用它。

width 和 height 属性对于定义画布的大小也是必需的。

提示:一张 HTML 页面上可以有多个 元素。

默认情况下, 元素没有边框,也没有内容。

如需添加边框,请使用 style 属性:

练习

html 复制代码
<!DOCTYPE html>
<html lang="zh-cn">
    <title>编程笔记 html5&css&js HTML Canvas</title>
    <meta charset="utf-8" />
    <style>
        body {
            color: cyan;
            background-color: teal;
        }
        .container {
            width: 500px; /* 设置容器的宽度 */
            margin: 0 auto; /* 将左右边距设置为自动 */
            line-height: 2;
        }
    </style>
    <body>
        <div class="container">
            <h1>这是一个 canvas</h1>
            <canvas
                id="myCanvas"
                width="500"
                height="500"
                style="border: 1px solid #000000"
            ></canvas>
        </div>
        <script>
            const canvas = document.getElementById("myCanvas");
            const ctx = canvas.getContext("2d");
            ctx.beginPath();
            ctx.rect(100, 100, 300, 300);
            ctx.stroke();
            ctx.fillStyle = "#00FF00";
            ctx.fillRect(150, 150, 200, 200);
        </script>
    </body>
</html>

小结

暂时用不到,再说吧。

相关推荐
执行部之龙2 小时前
JS手写——call bind apply
前端·javascript
吴声子夜歌2 小时前
JavaScript——函数
开发语言·javascript·ecmascript
SuperEugene2 小时前
Vue3 + Element Plus 表单开发实战:防重复提交、校验、重置、loading 统一|表单与表格规范篇
前端·javascript·vue.js
SuperEugene2 小时前
Vue3 + Element Plus 中后台弹窗规范:开闭、传参、回调,告别弹窗地狱|Vue 组件与模板规范篇
开发语言·前端·javascript·vue.js·前端框架
孟祥_成都2 小时前
前端下午茶:这 3 个网页特效建议收藏(送源码)
前端·javascript·css
SuperEugene2 小时前
VXE-Table 4.x 实战规范:列配置 + 合并单元格 + 虚拟滚动,避坑卡顿 / 错乱 / 合并失效|表单与表格规范篇
开发语言·前端·javascript·vue.js·前端框架·vxetable
cmd3 小时前
别再用错!5种JS类型判断方法,从原理到实战一文吃透
前端·javascript
Irene19913 小时前
JavaScript 事件循环(Event Loop) 的运作流程(附:queueMicrotask() 将一个回调函数立即排队到微任务队列中)
javascript·事件循环·宏任务·微任务·调用栈·queuemicrotask
wobi_baoyan3 小时前
【已解决】使用Maven打包发生或者启动Spring Boot项目发生 错误: 不支持发行版本 17
服务器·前端·javascript
学以智用3 小时前
# TypeScript 高级特性(核心+实用)
前端·javascript·typescript