0

的背景:

我正在处理的一个图形项目在 PC 上运行良好(快速),但在许多平板电脑(这里是原始 iPad)上它绘制我的 Canvas 图形非常慢。图形是我项目的大部分,所以这几乎是不可接受的。

我正在考虑调查 SVG 作为解决方案,但我是 SVG 菜鸟。我喜欢整个可缩放(矢量)的好处,但我担心文件大小。我目前只是向客户端画布绘制 fn 提供少量数据,让浏览器绘制画布。这在服务器上很容易,而且对带宽很有用,但对于平板电脑处理器来说可能工作量太大了。

但是,在我的图形中有数百个 SVG(“节点”??),SVG 生成的文本量似乎 -巨大的。

问题:

如果我能弄清楚怎么做,我有时间在本地预处理我的所有图形并上传到生产环境。如果我在本地网页上创建 SVG 图形(当然以编程方式 - 也许是 NodeJS),我可以以某种方式将完成的图形转换为文件(这就是“数据 uri”吗?)然后压缩它(gzip)?我已经通过 AJAX 调用我的图形,所以那里没什么大不了的。

如果我进行此预处理,结果对应用程序客户端的工作量会减少吗?即使对于几百个绘图项目,(当前想象的)gzip 压缩的 SVG 的文件大小也会很小吗?考虑到 SVG 只会绘制而不是处理大量 Javascript 绘图画布对象,对您来说这是否有意义?(我正在使用 KineticJS,它非常好,就像我说的,在 PC 上很棒)。

这是可行的,还是你认为我在找错树来解决绘图速度问题?是否已经有以编程方式创建/压缩 SVG 的解决方案?一如既往,谢谢。

4

0 回答 0