Как заставить SVG работать с IE? - PullRequest
17 голосов
/ 15 сентября 2009

Кто-нибудь знает о всеобъемлющей библиотеке для работы SVG с IE (в частности, с 7 и 8)?

Я хотел что-то Javascript, которое могло бы быть включено в мою веб-страницу и которое бы бесшумно конвертировало весь мой SVG в VML способом, подобным тому, что делает excanvas для Canvas.

Ответы [ 5 ]

15 голосов
/ 15 сентября 2009

Raphaël - библиотека JavaScript может помочь вам в этом.

Raphaël использует Рекомендацию SVG W3C и VML в качестве основы для создания графики и поддерживает Firefox 3.0+, Safari 3.0+, Opera 9.5+ и Internet Explorer 6.0+.

EDIT:

Есть еще две js-библиотеки, которые используют vml для рендеринга svgs в IE:

  • Достаточно SDK (где должна быть возможность легко интегрировать существующие SVG-файлы)
  • DojoX GFX из инструментария Dojo
15 голосов
/ 15 сентября 2009

Google SVG Web делает это. По данным сайта проекта:

SVG Web - это библиотека JavaScript, которая обеспечивает поддержку SVG во многих браузерах, в том числе Internet Explorer, Firefox, и сафари. Использование библиотеки плюс родную поддержку SVG вы можете мгновенно цель ~ 95% от установленного веб-база.

Хотя он описан как библиотека JavaScript, для него также требуется Flash 9+. Обычно это не проблема, но если вы работаете в корпоративной среде со старым Flash или без Flash на рабочих станциях, это не сработает.

Кроме того, это все еще в Альфе, что может быть проблемой, в зависимости от того, что ваш проект.

6 голосов
/ 15 сентября 2009

Я думаю, SVGWeb - это путь, даже если он основан на Flash, поскольку VML далеко не достаточно быстр для многих приложений.

2 голосов
/ 15 сентября 2009

Adobe предоставляет сценарии для автоматического обнаружения, установки и перенаправления вас на исходный сайт:

http://support.adobe.com/devsup/devsup.nsf/docs/51780.htm

http://www.adobe.com/svg/workflow/autoinstall.html

Я довольно успешно использовал это на своем сайте.

0 голосов
/ 19 ноября 2013

Более низкотехнологичным решением было бы использовать что-то вроде svg_alike (вставьте уведомление о конфликте интересов здесь :)). Он проверяет поддержку SVG, затем, если он не находит его, он заменяет все изображения SVG на PNG.

https://github.com/forwardadvance/svg_alike

Вы теряете преимущества плавного векторного масштабирования и поддержки сетчатки, но пользователи IE8 вряд ли будут использовать эти функции в любом случае.

Преимущество заключается в том, что вам не нужно конвертировать изображения в JavaScript. Я думаю, что это обеспечивает 80% стоимости за 5% работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...