我正在构建一个基于javascript的图像编辑工具。目前,我正在使用Canvas,但有时我感觉到,我的路径充满了无证件和随机黑客。我仍然没有想出很多东西,例如如何允许用户输入画布?如何在画布上检测绘制的对象并允许用户移动它们?
与此同时,我正在寻找SVG类似的东西,SVG Edit似乎是我想要的东西(除非我能够使用它之前必须进行大量的定制,这不是'一定不好)。
所以我的问题是,哪个工具更适合构建这些东西,考虑到IE支持不是优先考虑的事情。
答案 0 :(得分:3)
他们做不同的事情。绘制到画布上的东西不是“可移动的”,因为它们不是对象,只是像素。另一方面,SVG不允许您通过合理的方式绘制像素。
我认为本白皮书对于任何计划或开始使用Canvas和SVG进行编辑的人来说都是一个令人难以置信的资源。它提供了一个关于比赛场地的奇妙视角。
http://www.svgopen.org/2009/papers/54-SVG_vs_Canvas_on_Trivial_Drawing_Application/
来自论文:
在本文中我们将创建一个小的 矢量绘图应用程序与SVG, 和一个小像素绘图应用程序 与画布。然后我们将交换 平台:我们将创建一个像素 用SVG绘制应用程序,和 矢量绘图应用程序 帆布。这个实验很有用 关于这两种技术的限制的信息。