とりあえず以下のHTMLをベースにいろいろいじっているのですが、chromeでは表示されるのに、IE10では表示されなくて頭をひねっています。
(まだ非対応なのでしょうか?)
<!DOCTYPE html>
<head>
<title>test</title>
</head>
<body>
<img src="./hogehoge.svgz" type="image/svg+xml" />
</body>
</html>
http://stackoverflow.com/questions/7510208/how-to-decompress-svgz-with-javascript
のようにgzipを使用するのが一般的なようです。
http://defghi1977-onblog.blogspot.jp/2012/07/jsziptoolssvgsvgz.html
とか。
>HTMLの記述例をお願いします。
http://freefielder.jp/blog/2011/05/javascript-gzip.html
を見る限り、HTMLのコードはそのままでgzipしたものを置き、.htaccessのコードのみ書き換えるのが適当なようです。
<img src="./hogehoge.svg" />
それはさておき、
解凍さえできればsvgソースとして挿入してやるだけでで可能です。
<!DOCTYPE html>
<head>
<meta http-equiv="content-script-type" content="text/javascript">
<script src="/lib/zip.js"></script>
</head>
<body>
非圧縮svgファイル<br />
<img src="hogehoge.svg" /><br />
<object type="image/svg+xml" data="hogehoge.svg"></object><br />
<br />
スクリプトで書き出し<br />
<script>
document.write('<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="200px" height="200px">');
document.write('<rect x="0" y="0" width="100%" height="100%" fill="none" stroke="black"/>');
document.write('<circle cx="100" cy="100" r="50" style="stroke: black; fill: red;"/>');
document.write('</svg>');
</script>
</body>
</html>
参考文献
http://msdn.microsoft.com/ja-jp/library/ie/gg589526%28v=vs.85%29.aspx
http://ja.wikipedia.org/wiki/XMLHttpRequest
http://www.w3.org/TR/FileAPI/
ファイル読み込みはFILE APIを使うべきか他にすべきか、
javascriptでungzipするのはどうするのが効率良いか…、
あまりよい形に整理できそうにないので以上コメントにします。
通信スピードを稼ぎたいので、svgz直で読みたいです!
宜しくお願いいたします。
これの話は"Content-Encoding: gzip"をつけろという話だと思います。
http://forum.mozilla.gr.jp/?mode=al2&namber=42347&KLOG=271#42359
http://www.synapse.jp/cgi/support/bbs/c-board.cgi?cmd=ntr;tree=13076;id=
IE9だとobjectタグ経由(Content-Type付き相当?)ならOKという話も。
http://less.carbonfairy.org/post/1058123811
サーバ経由とそうでない場合、タグの指定などでブラウザの解釈がかわるんじゃないですかね。
こんな話もあったので。
http://vectorgraphics.blog33.fc2.com/blog-entry-25.html
XML が BOM 付きだったという結末か。
来週またsvgzファイルを作り直して試してみます。
サンプルで用いたIllustratorからsvgzファイルに書き出したデータは、以下の操作でIE10でも開けることができました。
1.svgzファイルの拡張子をgzipに名前変更
2.gzip形式の拡張子を展開
3.展開されたファイルの拡張子をsvgに名前変更
4.svgファイルをgzip形式で圧縮
5.圧縮ファイルの拡張子をsvgzに名前変更
6.svgzファイルをサーバにアップロードする
7.サーバの設定についてsvgzファイルに対応するよう記述する
要はIllustratorに頼らず、自力でsvgファイルをsvgzファイルに変換しないとIE10では動かないように感じました。
http://vis.uell.net/zensus2011/gemeinden.svgz
が開けられたので、もう少し頑張ろうと思いなおしていました。
参考までに。