跳到主要内容

总览与学习路径

这一章把 Canvas 放进前端图形栈里,避免一上来就记 API。

这一章覆盖什么

  • Canvas 2D 在浏览器图形栈中的位置
  • 立即模式 vs 保留模式
  • 学习顺序和能力分层
  • 和 SVG、CSS、WebGL 的职责切分(细节见 09 选型

文档清单

文档解决的问题
本 README路线与分层
立即模式与场景图为什么生产代码必须自建 scene,而不是「画完就算」
场景对照白板/标注/签名/视频等从哪篇读起

能力分层

层级表现
L1 能画能在已知尺寸的 canvas 上画 path / 图 / 字
L2 能对齐DPR、resize、pointer 坐标三者一致,高分屏不糊
L3 能交互变换后的节点可命中、可拖、可撤销
L4 能跑动画不掉帧、读回有策略、Worker 离屏可用
L5 能选说得出这张图为什么不是 SVG 或 WebGL

本体系默认读者从 L1 附近起步,正文按 L2–L4 写。L1 的 fillRect 教程不占篇幅。

不适用

  • 需要无障碍树、可复制文本、CSS 布局参与的 UI:不要用 Canvas 当 DOM 替代品。
  • 需要三维、大量三角、自定义着色器:选型章之后走 WebGL/WebGPU,不要在 2D context 里硬写 3D。