哪个JavaScript图形库具有最佳性能?

时间:2009-03-23 23:22:10

标签: javascript graphics

我正在为一个JavaScript项目做一些研究,其中绘制简单基元(即线条)的性能是最重要的。

this question的答案提供了一个很棒的JS图形库列表。虽然我意识到浏览器的选择比库有更大的影响,但在选择浏览器之前,我想知道它们之间是否存在任何差异。

有没有人在其中任何一个之间进行过性能比较?

7 个答案:

答案 0 :(得分:8)

更新回答(2019):

核心建议仍然相同:为了获得最佳性能,请使用瘦包装器或使用原始浏览器API,同时避免使用DOM或任何类似DOM的结构。在2019年,这意味着避免使用SVG(以及构建在其上的任何库),因为在尝试快速更改DOM时可能会导致性能问题。

Canvas是高性能Web图形的首选解决方案,适用于2D和3d(webgl)环境。 Flash已经死了所以不再是一个选项,但即使不是它的性能最终也会被本机浏览器API所匹配。

原始答案(2009):

如果您没有使用3D,只需使用带有excanvas的原始画布作为资源管理器后备。你的瓶颈将是javascript执行速度,而不是行渲染速度。除了IE之外,当场景变得太复杂时会陷入困境,因为VML实际上构建了一个dom。

如果你真的担心性能,肯定会使用flash并在actionscript中写下整个内容。你将获得一个更好的性能,并且使用flex sdk你甚至不需要购买任何东西。可以在flash / flex中使用几个不错的3d库。

答案 1 :(得分:7)

Raphael JavaScript Library

http://raphaeljs.com

答案 2 :(得分:3)

他们都没有很好的表现。它是2009年,网络浏览器中的可编程图形渲染状态确实令人沮丧。 25年前,我可以在vt125终端上做更快的互动。如果您正在做任何互动,请考虑使用Flash ...否则我会根据您的需求选择服务器端的重型解决方案

答案 3 :(得分:3)

到目前为止 - 使用processing.js(javascript画布实现“Processing”语言)和/或raphael.js(小巧方便的VML / SVG javascript库)。

绩效建议取决于任务:

  • 高度动态,复杂的原语(或大量的原语) - 画布(像素,低级API)

  • 较低数量的原语,高度可扩展,集成在DOM中 - SVG / VML(向量,高级API)

答案 4 :(得分:0)

对于基本绘图(如直线,圆和多边形),我建议Walter Zorn's Graphics Library。它的构建考虑了性能,并在大量浏览器中运行。

答案 5 :(得分:0)

我知道你说浏览器影响力更大,为什么不坚持使用优化的SVG调用?然后,它“可以”在所有浏览器中工作,但是......

Chrome足够强大,可以有效地渲染3D建模:

http://www.chromeexperiments.com/detail/monster/

答案 6 :(得分:0)

http://www.jsgl.org怎么样?它使用SVG / VML。

相关问题