为了账号安全,请及时绑定邮箱和手机立即绑定

在网页中使用SVG与Canvas进行绘图,有哪些不同之处?

在网页中使用SVG与Canvas进行绘图,有哪些不同之处?

呼唤远方 2018-12-30 10:00:37
在网页中使用SVG与Canvas进行绘图,有哪些不同之处?
查看完整描述

1 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

表列出了canvas绘图与SVG绘图的一些不同之处。

canvas

SVG

canvas通过JavaScript来绘制2D图形

SVG是一种使用XML描述2D图形的语言

canvas是逐像素进行渲染的。在 canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括已被图形覆盖的对象。

在SVG中,每个被绘制的图形均被视为对象。如果SVG对象的属性发生变化,那么浏览器能够自动重现图形。

依赖分辨率

不依赖分辨率

不支持事件处理

支持事件处理

弱的文本渲染能力

最适合带有大型渲染区域的应用程序(比如谷歌地图)

能够以 .png 或 .jpg 格式保存结果图像

复杂度高会减慢渲染速度(任何过度使用   DOM 的应用都不快)

最适合图像密集型的游戏,其中的许多对象会被频繁重绘

不适合游戏应用


查看完整回答
反对 回复 2019-01-17
  • 1 回答
  • 0 关注
  • 625 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信