让前端飞Web前端之路

canvas与svg特性和使用对比

2017-10-09  本文已影响596人  武大郎

两者比较一览

Canvas Svg
基于像素的(动态png) 基于形状的
单个html元素 多种多样的形状dom元素
只能通过script修改 script和css都可以修改
事件模型和用户交互需要使用像素(x, y) 事件模型和用户交互抽象到元素(rect, path)
绘图面积小或者对象大于10k时性也能很好 绘图面积很大或者对象小于10k的时候性能很好

性能对比曲线图

canvas vs svg 性能(来源microsoft开发社区)

使用场景举例

图表和图形

svg和canvas都可以表现图表(如柱状图, 散点图, 饼图等等), 在选择开源的第三方库绘图的时候应该要注意根据使用场景来选择
以下情况使用svg为佳:

使用场景一览
上一篇下一篇

猜你喜欢

热点阅读