组件库图片用base 64还是 svg

118 阅读1分钟
  1. 首先呢,一般组件库要最大限度,避免性能损耗,所以一般来讲,就是用svg,因为不失真,
  2. 不过为什么不失真,背后是基于数学公式,当渲染到页面后随着不同的分辨率来进行dom样式操作。
  3. 可伸缩性: SVG 是一种矢量图形格式,它可以在不损失质量的情况下缩放到任何大小。这意味着你可以在不同的屏幕分辨率和设备上使用相同的 SVG 图像,而无需担心失真或模糊。
  4. 所以强调需要适配不同分辨率下,就是用这个svg ,而对于base64因为直接嵌入到文本里面了,减少了http请求,但是增加web文档加载的时间,所有一般小图用base64 ,大图用svg。

分类

  1. 一般来讲svg图属于矢量图
  2. 而传统的png等图都是属于位图

svg原理

  1. 其实对于svg背后的原理,本质就是随着不同分辨率下数学描述会动态变化,所以才不会失真。

png等

  1. 随着不同分辨率,像素点之间的距离可能会扩大或者缩小,这就导致了放大后,像素化,会严重失真,所以一般小图比较合适