Самый простой формат для чтения векторных изображений - это svg, поскольку svg - это XML, а XML - просто текст.
Преобразуйте ваше векторное изображение в svg, используя что-то вроде Illustrator или Inkscape, а затем откройте его в текстовом редакторе.Вы обнаружите, что большинство форм, таких как <path />
и <rect />
, имеют прямую эквивалентность в Рафаэле.Например, объект <path />
определяет координаты пути в своем атрибуте d
и имеет тот же синтаксис, что и пути в Рафаэле:
<path
style="fill:none;stroke:#000000;stroke-width:12"
d="m 116.6,832.4 c 0,0 5.8,85.5 127.6,87.0 121.8,1.4 137.7,-79.7244"
/>
Вы можете преобразовать его в Рафаэля:
var path = paper.path(
"m 116.6,832.4 c 0,0 5.8,85.5 127.6,87.0 121.8,1.4 137.7,-79.7244"
);
path.attr({fill:'none',stroke:'#000000';'stroke-width':12});
Обратите внимание на любые преобразования, примененные к объектам и группам (элемент <g />
), вам придется повторить их в Рафаэле.Например, вы видите следующее:
<path
style="fill:none;stroke:#000000;stroke-width:12"
d="m 116.6,832.4 c 0,0 5.8,85.5 127.6,87.0 121.8,1.4 137.7,-79.7244"
transform="translate(-124,370)"
/>
, после создания пути в Рафаэле вам нужно применить translate()
:
path.translate(-124,370);
Вы, вероятно, можете написать скриптпреобразовать SVG-файлы в синтаксис Raphael или загрузить SVG-файл в браузере в виде текста и использовать синтаксический анализатор XML DOM браузера для его обработки и рисования с использованием Raphael.