动画SVG还是画布?

Big*_*ief 6 html5 animation svg canvas

我想知道它是否是更好地使像动画这样在画布或SVG(性能明智)?我现在在jquery中重写它,但我在某处读到每次更改时都会重绘一个画布.

Ümi*_*mit 11

对于这些"简单"的动画和场景图,如果你明智地使用SVG或Canvas性能并不重要.两者都应该没有性能问题.

但是,与Canvas相比,使用SVG创建动画可能更容易.在Canvas中你必须重绘整个场景,在SVG中你可以创建一次环,然后在其上定义一个转换(旋转).

对于SVG,请查看d3.jsraphael,对于canvas,您可以查看processingjs,fabric.js,kinetic.jspaper.js

  • 那么在纯画布中,不可能将事件附加到任何基元/形状.您必须自己编写命中检测代码(检查鼠标位置是否在圆圈内).然而,上面提到的画布库可能支持形状上的事件,因为它们通常具有抽象层.SVG支持开箱即用的形状事件​​,这就是为什么在SVG中实现交互比在Canvas中更容易实现的原因. (3认同)