今天才知道,SVG 图标是画出来的
最近动手把 fuzi.one 也搬家到了 bear blog,早上打理一番之后,想要在首页的播客介绍下面,放一排可以订阅的各大播客网站的图标,这样读者可以立即点击收听。
于是立即打开一个熟悉的播客网站,找到他家的处理方式,把网页链接发给 ChatGPT,让它依葫芦画瓢帮我也做一排链接。
可是来回几轮之后,发现最后的结果都不太对。我一直以为,这些图标,不管是 png,还是 svg,都是一张图片,然后加上超链接就行了。可等我把网页保存为 html,再进去一看,发现这些图标的确是 svg,但它们并不是保存在某个地方的图片,而是一堆长成这样的数字:
path fill="#ff0000" d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"
我大概知道,这些数字代表着,图标是即时渲染出来的,而不是从某地拉取的图片,和 ChatGPT 确认了一下,的确如此。尽管它们看起来,和官方的 logo 长得一样,但的确是通过这些数字“画出来”的。你可以把这些数字理解成,从哪里画一条弧线,角度如何,到哪里拐弯,在哪里结束。
好吧,我的确小白了一把,不过今天也算学到了新的知识。
最后,我“借用”别人画好的 svg 图标,用在了自己的网站上,挺好看的。

如果你也需要,只用把我的首页保存为 html 文件,用文本编辑器打开,就能看到这些图标的“画法”了。