跳到主要内容

绘制API工程

CanvasRenderingContext2D 当成 绑定在一张表面上的光栅器,而不是一堆散落的全局 setter。

文档清单

文档解决的问题
Context 生命周期与读回getContext 单例、hint 一旦定死、willReadFrequently
路径文字图片与合成Path2D、text metrics、ImageBitmap、composite
clip 遮罩与合成层clip vs GCO、开洞、alpha mask
路径布尔运算Canvas 没有 path boolean;evenodd vs 像素 vs 多边形库
渐变 Pattern 线型与滤镜渐变坐标系、虚线相位、blur 成本
ImageData 与像素管线读回坐标、处理表面、预乘
多行文字与度量折行、CJK/emoji、IME 为什么要 DOM

封装底线

  • 业务层不读「当前 path」,只传 Path2D
  • 样式修改必须落在 save/restore 或等价 RAII 里。
  • 读像素是显式能力,不是随手 getImageData