2012-02-22 5 views
0

Raphael.jsを使ってsvgファイルからマップを作成しようとしています。私の問題は、元の地図はかなり詳細です。私はIllustratorでポイントの数を減らさなければならないと思っていますが、私はそれをどれだけ押し込む必要があるか分かりません。Javascriptの視覚化:svgマップの許容サイズ?

おおよそ、svgファイルの許容サイズはどうですか?アイデアは、パスを抽出しRaphael.jsを使用してそれらを視覚化すると、マップにいくつかの対話性を追加することです。

現在、約300ポリゴンの17.000ポイントを保持するファイルは約180kbです。あなたは(収縮最も一般的なアルゴリズムである)ことがあります何を圧縮するためのWebサーバを設定した場合

-jens

+0

「受け入れ可能」とは、かなり恣意的です。 –

+0

localStorageを使用して、データがあまり変更されないと思われるデータをキャッシュすることができます。たとえばhttp://www.netmagazine.com/tutorials/create-super-efficient-svg-characters-localstorageを参照してください。 –

+0

ありがとうErik。それは私が知らなかった非常に興味深い機能です。他の詳細なsvgからの私の経験は、あなたがインタラクションを追加し始めたときに古いコンピュータやブラウザでかなり重くなる傾向があることです。 – Jens

答えて

0

は、そのファイルには、当然のこととして、圧縮され、SVGファイルは容易の繰り返しのおかげを圧縮しますデータ構造。

まだ大きすぎる場合は、図の目的が何であるかを検討してください。それは詳細にする必要がありますか?

0

最近、同様の問題が発生しましたが、地図の代わりに文字形式でした。あなたはSVGのソースコードを見てみた場合には、

M 0 0 L 1.29384945877 28.494585495 L 1.29384945877 28.494585495 ... 

すべてのそれらの余分の数字

はあなたは、1つのまたは2つの小数と、それに逃げることができ、必要のない精度です...のようになります。まったく同じように見えます。私はそれらを取り除き、60〜70%の圧縮を達成しました。

正規表現の置き換えで削除できます。

+0

おかげでDuopixel、そのような巧妙で簡単なソリューション! – Jens

関連する問題