资料来源:H5标签有哪些之MDN
Canvas主要是用笔刷来绘制2D图形的
SVG主要是用标签来绘制不规则矢量图的
相同点:都是用来画2D图形的
不同点如下表格:
SVG | Canvas | |
---|---|---|
不同点: | SVG画的是矢量图 | Canvas画的位图 |
不同点: | SVG节点过多时渲染慢(因为节点是一个个渲染的,渲染一个节点需要t ms,n个节点就要 n*t ms) | Canvas渲染多节点时候性能更好,当然也会更复杂 |
不同点: | SVG支持分层和事件 | Canvas不支持分层和世嘉,但是Canvas可以用库来实现 |