SVG 缩放与 svg-pan-zoom.js 在 Mozilla Firefox 中的性能问题
SVG zoom with svg-pan-zoom.js performance issues in Mozilla Firefox
我正在使用 javascript svg-pan-zoom.js (https://github.com/ariutta/svg-pan-zoom) 库在 Web 应用程序中缩放和平移 svg。在 Firefox 中缩放非常缓慢和滞后,而在 Chrome 和 IE11 中缩放效果很好(使用显示平面图的 5MB .svg 文件进行测试 - 如果文件较小,则此问题并不那么明显)。平移工作正常。我在论坛上阅读了很多关于这个问题的主题,但我还没有找到任何解决方案。有谁知道是什么导致了这个问题以及如何解决它?
Example:
http://jsfiddle.net/coz3fd0L/3/
检查您的 refreshRate
选项。也许你设置了一个高数字。
如果不是,那么您可以设置一个较低的数字(例如 10,这意味着每秒最多 10 帧),如果可以改善您的问题。
除此之外,我不知道 svg-pan-zoom 有任何其他问题。至少如果平移是平滑的,那么缩放应该是相同的。
也许您的 SVG 有很多 edges/curves/nodes 而 Firefox 根本不擅长调整这些东西的大小。或者在使用矩阵变换时调整大型 SVG 的大小很糟糕(矩阵变换用于 svg-pan-zoom 中的 zoom/pan)。
更新: 据我所知,这纯粹是 Firefox 的问题(或者它的方式)。仅从您的示例 http://imgh.us/test_51.svg 打开 SVG 就占用 CPU 的 100%(用于页面滚动)。
我也确实尝试过手动更改矩阵变换值(以测试它是否是 svg-pan-zoom 问题)并且它无论如何都很慢。
我看到的唯一解决方案是尝试优化您的 SVG(也许可以使它们更简单:减少边缘、节点、不渲染白色元素...)。
我正在使用 javascript svg-pan-zoom.js (https://github.com/ariutta/svg-pan-zoom) 库在 Web 应用程序中缩放和平移 svg。在 Firefox 中缩放非常缓慢和滞后,而在 Chrome 和 IE11 中缩放效果很好(使用显示平面图的 5MB .svg 文件进行测试 - 如果文件较小,则此问题并不那么明显)。平移工作正常。我在论坛上阅读了很多关于这个问题的主题,但我还没有找到任何解决方案。有谁知道是什么导致了这个问题以及如何解决它?
Example:
http://jsfiddle.net/coz3fd0L/3/
检查您的 refreshRate
选项。也许你设置了一个高数字。
如果不是,那么您可以设置一个较低的数字(例如 10,这意味着每秒最多 10 帧),如果可以改善您的问题。
除此之外,我不知道 svg-pan-zoom 有任何其他问题。至少如果平移是平滑的,那么缩放应该是相同的。
也许您的 SVG 有很多 edges/curves/nodes 而 Firefox 根本不擅长调整这些东西的大小。或者在使用矩阵变换时调整大型 SVG 的大小很糟糕(矩阵变换用于 svg-pan-zoom 中的 zoom/pan)。
更新: 据我所知,这纯粹是 Firefox 的问题(或者它的方式)。仅从您的示例 http://imgh.us/test_51.svg 打开 SVG 就占用 CPU 的 100%(用于页面滚动)。
我也确实尝试过手动更改矩阵变换值(以测试它是否是 svg-pan-zoom 问题)并且它无论如何都很慢。
我看到的唯一解决方案是尝试优化您的 SVG(也许可以使它们更简单:减少边缘、节点、不渲染白色元素...)。