Либо SVG, либо Canvas подойдут вам.Вам, вероятно, будет легче разрабатывать это в SVG просто из-за того, сколько уже сделано для вас.
Вот некоторые другие соображения:
- Canvas работает во всех «современных»"браузеры, но не IE7 / 8
- SVG работает во всех современных браузерах, а VML (очень близко) в IE7 / 8
- Рендеринг текста в Canvas может выглядеть совсем по-разному для каждого браузератеперь
- Canvas работает в Android и iOS в некоторой степени (незначительные вещи, такие как текстовые градиенты все еще портятся)
- SVG не работает в Android (по крайней мере, год назад. Ничегоизменить?) Он работает в iOS
- Доступность SVG FAR лучше.Текст доступен для поиска, поэтому оптимизирован для SEO, слепых, позволяет копировать и вставлять и т. Д. Взаимодействие с остальной частью DOM намного естественнее.
- Производительность холста лучше, но вы этого не делаетеЭто не нужно.
На данный момент они в равной степени совместимы, за исключением старых версий IE.Вы можете заставить их работать с Canvas, используя библиотеку excanvas, но это отстой, особенно если что-то движется.
Я бы порекомендовал SVG исключительно потому, что вы сможете начать разработку с нуля.это намного быстрее для типа приложения поэтажного плана.Все уже является объектом DOM.События, обработка мышью и т. Д. Уже сделаны для вас.
Но если вы действительно хотите, чтобы он работал на (старых?) Телефонах с Android, Canvas может быть лучшим выбором на данный момент.