svg究竟是什么?
1 要点
要点1:svg 与 jpg/png 等格式的用途完全不同,不可相提并论,没有可比性,不可互相替代。
要点2:日常生活中,我们用相机拍摄自然景象得到的照片和视频,能且只能用 jpg/png/mp4 等格式存储,不可用 svg 格式存储。在自然景象中,像素之间没有确定的数学函数关系。我们称自然景象为图像,只能用像素点描述,无法用数学函数描述。
要点3:svg 用于人为设计(特别强调人为设计,而非自然存在的)的点、线、面构成的图形,这些图形可用数学函数来表达。svg 不适合描述和表达自然景象。
概念 |
特点 |
生成者 |
描述方法 |
文件格式 |
图像 |
像素点之间无确定的数学函数关系 |
自然 |
逐个像素 |
jpg/png/mp4等 |
图形 |
点与点之间有确定的数学函数关系 |
人为 |
数学函数 |
svg |
2 svg举例说明
假设要设计一个线条非常优美的图标,由椭圆、双曲线和抛物线构成。
假设这个图标非常巨大,由一万亿个点构成。
我们可以用以下要素描述这个图标:
S1:椭圆方程:长轴长度,短轴长度,x的范围,线条颜色。
S2:双曲函数或方程:x的范围,线条颜色
S3:抛物线函数或方程:x的范围,线条颜色
描述以上要素大约需要256字节,有了这256字节,软件会根据x的范围逐点绘制每条曲线,最终绘制出由一万亿个点构成的美丽图标!
设想一下,这个图标若用 jpg/png 去绘制,将耗费多少数据量。
结论
结论1:svg 仅适用于人为设计的图形,这些图形可以用数学函数来表达,这些数学函数可以用很少的数据来表达。最终达到的目的:用很少的数据表达很复杂、很优美的图形。
结论2:自然景象(图像)中的点与点之间无关联关系,无法用数学函数表达,只能用像素点表达,jpg/png/mp4 适用于表达自然景象(图像)。
另外,一定要辨别清楚图形和图像这两个概念。
图形是人为设计的,可用数学函数来表达,svg 针对这种用途。
图像是自然存在的,无法用数学函数来表达,jpg/png/mp4 针对这种用途。