Проблемы преобразования VML в SVG в .NET - PullRequest
0 голосов
/ 05 мая 2011

У меня очень похожая проблема, как в этом посте ;Я использую RaphaelJS для генерации диаграммы, но более конкретно в моем случае мне нужно распечатать результат.Я использовал утилиту командной строки Inkscape (это отлично), чтобы преобразовать вывод Raphael SVG в файл PNG, который пользователь может загрузить и распечатать.

Проблема в том, что он работает в Firefox и т. Д.но не Internet Explorer.Поскольку IE использует VML, а не SVG, Inkscape не будет преобразовывать его, когда пользователь выходит из IE.

Я посмотрел на IECapt, который вполне мог бы выполнить эту работу, но буквальный скриншот нев моем сценарии будет достаточно, так как сгенерированная диаграмма обычно занимает больше ширины экрана, и мне нужно все это в одном файле.Кроме того, пользователь может изменять диаграмму, щелкая узлы и т. Д., Не меняя URL-адрес, поэтому на самом деле использование IECapt в моем случае потребовало бы параметров URL-адреса для репликации состояния диаграммы.

Мне просто нужно разобраться в этом.это преобразование из формата VML, и я могу стереть с ног этот проект!

Ссылки

1 Ответ

2 голосов
/ 05 мая 2011

Вы можете преобразовать VML в SVG следующим образом: http://sourceforge.net/projects/vectorconverter/,, взятый из этого вопроса: Существуют ли какие-либо инструменты для преобразования устаревшего VML в SVG? , а затем запустите его через Inkscape, чтобы получитьВерсия PNG.

Редактировать: инструмент vectorconverter основан на PHP, но для тяжелой работы использует XSLT - VML и SVG - это просто XML под капотом - поэтому, если вы не можете получить прямой доступ к библиотекам PHP, вы, вероятно, могли быудается повторно использовать XSLT на выбранном вами языке.

...