0

私はjavascript svg-pan-zoom.js ( https://github.com/ariutta/svg-pan-zoom )ライブラリを使用して、Webアプリケーションでsvgをズームおよびパンしています。Firefox でのズームは非常に遅くラグがあり、Chrome と IE11 でのズームは非常にうまく機能します (フロア プランを示す 5 MB の .svg ファイルでテスト - ファイルが小さい場合、この問題はそれほど目立ちません)。パンニングはうまく機能しています。フォーラムでこの問題に関する多くのトピックを読みましたが、まだ解決策が見つかりません。この問題の原因と修正方法を知っている人はいますか?

Example: http://jsfiddle.net/coz3fd0L/3/

4

1 に答える 1

3

refreshRateオプションを確認してください。高い数値を設定している可能性があります。そうでない場合は、低い数値 (たとえば、1 秒あたり最大 10 フレームを意味する 10) を設定すると、問題が改善される場合があります。

それ以外には、svg-pan-zoom の他の問題については知りません。少なくともパンが滑らかであれば、ズームは同じでなければなりません。

SVG には多くのエッジ/カーブ/ノードがあり、Firefox はそのようなもののサイズ変更が苦手なのかもしれません。または、マトリックス変換が使用されている場合、大きな SVG のサイズ変更が苦手です (マトリックス変換は、svg-pan-zoom のズーム/パンに使用されます)。

更新:私が見たところ、これは純粋に Firefox の問題です (またはその通りです)。例http://imgh.us/test_51.svgから SVG を開くだけで、100% の CPU が使用されます (ページ スクロール用)。

また、マトリックス変換値を手動で変更しようとしましたが (svg-pan-zoom の問題かどうかをテストするため)、とにかく非常に遅いです。

私が見る唯一の解決策は、SVG を最適化することです (おそらく、SVG をより単純にすることは可能です: エッジやノードを減らし、白い要素をレンダリングしないでください...)。

于 2015-05-11T22:16:11.720 に答える