canvas 与 svg 对比

角度canvassvg
绘图方式通过绘制像素点来创建图像,绘制过程是即时的,绘制的元素不保留在 DOM 中,因此对于大量绘图以及动画效果更为适合。通过创建矢量图形来创建图像,绘制过程是基于 XML 的,绘制的元素是保留在 DOM 中的,因此对于静态图形、数据可视化等场景更为适合。
分辨率由于是像素级别的绘图,因此在不同分辨率的设备上表现可能会有所失真。由于是矢量图形,因此在不同分辨率的设备上表现相对稳定,可以无损放大或缩小。
动画效果通过一帧一帧的重新绘制实现动画效果,因此需要手动控制绘制速度和频率。可以使用 CSS 和 JavaScript 来实现动画效果,或者通过 SMIL(可交互式媒体语言)来自动控制动画。
灵活性可以绘制任何形状和图像,像素级别的控制可以创造出更加细腻的效果,但是需要手动编写绘制代码。可以通过简单的语法来创建图形,支持各种形状、线条、路径以及各种变形效果,易于操作和修改。

svg
canvas

posted @ 2023-06-15 16:13  海胆Sur  阅读(29)  评论(0)    收藏  举报  来源