Создание GFX рисунков из файлов SVG на Dojo

Одной из самых удивительных вещей Dojo / Dijit / DojoX семейства является библиотека GFX.

GFX живет в dojox.gfx и обеспечивает основу построений диаграмм Dojo, рисунков и скетчей. Также GFX позволяет создавать векторную графику (SVG, VML и т.д.), используя гибкий API.

С GFX, вы можете создавать любые векторные изображения. И не только статику, но также вы сможете их вращать, изменять размер, создавать анимацию, практически все что угодно.

Пример

Установка

Очевидно, вам нужно скачать последнюю Dojo SDK. В Dojo SDK вам надо выбрать следующую директорию:
dojox/gfx/resources/

В этой директории вы найдете svg2gfx.xsl файл. Вам нужно его переименовать в svg2gfx.xslt для максимальной совместимости с процессором.

Скрипт командной строки

Команда на запуск скрипта следующая:

Если у вас нет такого пакета, то вы с легкостью сможете найти его через Google.

Сгенерированный JSON

Результат работы скрипта будет выглядеть следующим образом:

JSON файл может быть достаточно большим, но из-за гибкости конечного продукта, размерами файла можно пренебречь.

Редеринг JSON в GFX графику

Надеюсь, все что было до этого, вам показалось достаточно простым, потому что сейчас будет самое сложное — рендеринг GFX изображения:

Для начала, требуются dojox.gfx и dojo.gfx.util пакеты. Используя dojo.xhr вы запрашиваете файл через AJAX. Как только изображение JSON будет полностью получено, вы создадите GFX слой, группу в слое, и используйте dojox.gfx.utils.deserialize для превращения JSON в графику. Все!

Для чего это нужно?

Вот несколько преимуществ использования JSON и GFX для создания и хранения вашей графики:

  • GFX управляемая графика просто анимируется, изменяется и трансформируется
  • Загрузка данных изображения происходит один раз, но на выходе вы можете получать изображения любого размера в любом количестве
  • GFX векторная графика будет работать в Internet Explorer через SVG


Оставить комментарий