Hi everyone,
all-the-icons maintainer here. Recently I've converted all-the-icons from using icon-fonts to SVGs. A few early testers of this branch have reported that when they resize the default face, either by text-scale-mode, loading a different theme or setting the default face size attributes manually, the SVG icons inserted into the buffers do not scale accordingly.
In the SVG branch in all-the-icons, all the icons are inserted with a `:width` and `:height` properties set on the image, and the face is applied to the propertized string. i.e.
```elisp
ELISP> (all-the-icons-icon-for-file "test.js")
#("" 0 1
(face all-the-icons-lpurple font-lock-face all-the-icons-lpurple fontified t display
(image :type svg :data "<svg viewBox=\"0 0 512 512\" width=\"512\" height=\"512\"> <path d=\"...snip...\"></path></svg>" :scale 1 :transform-smoothing t :width 14 :height 14 :ascent center :margin 1)
front-sticky nil rear-nonsticky t))
```
As far as I understand, simply adjusting the scale factor of the image will suffice. The problem is, since Emacs doesn't do it by itself, I don't really know how to do it in Elisp and be performant. Are there any hooks or internal undocumented functions that I can use to scale all the images in all of the frames when the default face size changes?
Thanks,
Jimmy Yuen Ho Wong