贝利信息

javascript的canvas是什么_如何绘制图形?

日期:2025-12-14 00:00 / 作者:紅蓮之龍
Canvas 是 HTML 提供的命令式绘图元素,需通过 JavaScript 的 2D 上下文(getContext('2d'))调用 fillRect、arc 等方法绘制图形,并设置 fillStyle、strokeStyle 等样式属性;清空画布可用 canvas.width = canvas.width 或 clearRect。

Canvas 是 HTML 中的一个绘图元素,本身不画东西,而是提供一块“空白画布”和一套 JavaScript 接口,让你用代码控制像素、绘制图形、做动画甚至处理图像。

它不是 SVG,不生成 DOM 节点;也不是 div + CSS,不能靠样式堆出图形——它是命令式绘图:你告诉它“从哪开始、画什么、怎么填”,它就照做。

怎么启用 canvas?

先在 HTML 里放一个 标签,指定宽高(最好用 width/height 属性,别只靠 CSS 缩放):

然后用 JS 获取上下文(2D 绘图用 getContext('2d')):

const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');

怎么画基本图形?

所有绘制都通过 ctx 对象调用方法。记住两个关键步骤:描边(stroke)填充(fill),很多图形默认只描边,不填色就看不见。

怎么设置颜色和样式?

这些属性在绘制前设好,影响后续所有操作:

怎么清空画布?

最可靠的方式是重设宽高(会清空并重置所有样式):

canvas.width = canvas.width; // 简洁写法,触发重置

或者用 clearRect(0, 0, canvas.width, canvas.height),但不会重置线条宽度、颜色等状态。

基本上就这些。canvas 不复杂,但容易忽略路径管理(比如忘了 beginPath() 导致图形连在一起)和坐标系原点(左上角)。多练几次矩形、线条、圆,后面画图表、游戏、滤镜就顺了。