Скажите, пожалуйста, что вы думаете о HTML5 Canvas vs SVG/VML? Дайте мне за и против в сравнении.
Спасибо!!!
Ответ 1
HTML5 Canvas - это просто поверхность рисования для битовой карты. Вы настроили ничью (произнесите цвет и толщину линии), нарисуйте эту штуку, и тогда Canvas не знает об этом: он не знает, где это или что это такое, это всего лишь пиксели. Если вы хотите рисовать прямоугольники и перемещать их или выбирать, тогда вам нужно закодировать все это с нуля, включая код, чтобы помнить, что вы их нарисовали.
С другой стороны, каждый созданный вами элемент SVG/VML является реальным элементом в DOM. По умолчанию это позволяет вам лучше отслеживать созданные вами элементы и облегчать работу с вещами, такими как события мыши, по умолчанию.
Canvas будет лучше для более быстрых действий и тяжелых манипуляций с растровыми изображениями (например, анимация), но возьмет больше кода, если вы хотите много интерактивности.