JavaScript绘图库?

时间:2020-03-06 14:23:19  来源:igfitidea点击:

对JavaScript交互式图形库有什么建议吗?只需绘制线条,多边形,不同颜色的文本即可。兼容IE / Firefox / Opera / Safari。

解决方案

我们可以直接使用canvas对象绘制2D图像。 IE需要exanvas库。

http://developer.mozilla.org/En/Drawing_Graphics_with_Canvas

John Resig的Processing.js是一个不错的框架。

根据我们需要成为跨浏览器的人以及完成输出的目标,我们可能会研究Canvas元素和相关的javascript。

帆布

尝试http://www.walterzorn.de/en/jsgraphics/jsgraphics_e.htm。这是我发现的最好的工具(无需求助于SVG),并且可以在大多数没有插件的浏览器中使用。

Raphael对此非常酷,并且可以在浏览器中使用,因为它使用VML(用于MSIE)和SVG(用于其他所有功能)。

使用canvas标记绘制文本是一个很大的麻烦。选择是使用绝对位于正确位置的常规div,或者查找/编写字体布局引擎(示例),或者等待新的标准得以实现,该标准允许我们绘制文本。 SVG对此要好得多。

在IE中,我们可以使用ExplorerCanvas来模拟具有IE自己的VML标记的canvas API。但是,本机VML可以在路径上执行文本操作,例如SVG。我认为从理论上讲,如果我们想要复杂的文本处理,则需要SVG和VML,如Dan提到的Raphael库。

在开始之前,我们可能还需要考虑一下Flash。

如上所述,画布是我们应该使用的方式。 IE本身不支持它,因此我们需要下载ExCanvas以确保跨浏览器的兼容性。对于使用canvas标签的某些项目,我建议我们查看Ajaxian。

签出jQuery Drawing插件,我们还可以查看Mozilla Canvas参考和教程。