Как распаковать SVGZ с помощью JavaScript? - PullRequest
2 голосов
/ 22 сентября 2011

Я пытаюсь настроить эту карту мира, используя SVGZ вместо SVG, чтобы я мог предоставить своим пользователям более богатую, более подробную карту.

До сих пор я пытался распаковать его, используя js-deflate , но безрезультатно.

Ответы [ 3 ]

3 голосов
/ 22 сентября 2011

Как я пишу в комментарии, SVGZ использует gzip. Лучшие браузеры могут распаковывать gzip файлы без посторонней помощи. Ваша страница http://home.no/dwaynie/map загружает файл .svgz с Content-Type:text/plain; charset=ISO-8859-1. Но для SVG | SVGZ это недопустимый тип MIME.

svg     Content-Type: image/svg+xml

svgz    Content-Type: image/svg+xml
        Content-Encoding: gzip

Вышеупомянутые заголовки должны быть настроены на веб-сервере (IIS, Apache).

3 голосов
/ 22 сентября 2011

Если вы хотите, чтобы SVG-файл находился внутри SVGZ, вы распаковываете его (это переименованный архив):

cp file.svgz file2.svg.gz
gunzip file2.svg.gz

Если вы хотите использовать образ SVGZ, то у вас могут возникнуть проблемы. Я думаю, что некоторые браузеры поддерживают его (практически все поддерживают сжатие Gzip), но я сомневаюсь, что многие поддерживают (если вообще его поддерживают).

0 голосов
/ 22 сентября 2011

Чуть ниже карты на странице, на которую вы ссылаетесь, есть ссылка на Википедию, которая объясняет, что это такое: файл SVG, сжатый с помощью gzip.

Для полноты картины: gzip и (pk) zip не имеют одинаковый формат, но такие инструменты Windows, как WinRAR и 7-Zip понимают gzip так же, как zip. В каждом дистрибутиве Linux по умолчанию установлен gzip / gunzip.

...