Canvas和SVG的区别

275 阅读1分钟

Canvas主要是用笔刷来绘制2D图形的。

SVG主要是用标签来绘制不规则矢量图的。

相同点

都是主要用来画2D图形的。

不同点
  1. Canvas画的是位图,SVG画的是矢量图。
  2. SVG节点过多时渲染慢,Canvas性能更好一点,但写起来更复杂。
  3. SVG支持分层和事件,Canvas不支持,但是可以用库实现。
canvas的示例

MDN链接:

Canvas - Web API 接口参考 | MDN

SVG 教程 - SVG | MDN (mozilla.org)