You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
logo: Switch from Inkscape to rsvg-convert / librsvg
This SVG implementation is more convenient than Inkscape's for
several reasons:
* It's faster -- the runtime for the whole script goes from about
5.5s down to 1.5s.
* It doesn't include a redundant alpha layer (of a constant 0xff)
in the output. That makes all the PNG outputs smaller, and
better yet lets us cut out the mess of ImageMagick `convert`
we'd been using for stripping that layer in the one file where
Apple forbids it.
* Most concretely: it supports the `transform` CSS property.
That will come in very handy in the next commit, to help us
stitch together different pieces of the new icon design.
For a useful table of which SVG implementations support which
features, see this page from resvg:
https://linebender.org/resvg-test-suite/svg-support-table.html
(At the moment resvg isn't in Debian stable, though -- presumably
because Rust packaging is somewhat hard -- so resvg itself was
less convenient for me to use.)
Just like with the last couple of commits, this produces a visually
imperceptible change in the output files. Examining with `sng`
shows some pixels did change slightly, and also that some metadata
got simpler. Here's from [email protected]:
IHDR {
width: 40; height: 40; bitdepth: 8;
- using color alpha;
-}
-pHYs {xpixels: 6299; ypixels: 6299; per: meter;} # (160 dpi)
-tEXt {
- keyword: "Software";
- text: "www.inkscape.org";
+ using color;
}
+bKGD {red: 255; green: 255; blue: 255;}
Others are similar but with width, height, xpixels, ypixels, and
the DPI figure all scaled up; and in [email protected] the old
version had no "alpha" but did have sections cHRM and gAMA.
Like with a couple of previous commits in this series, we leave
those changes out for now, in order to bundle them with
substantive changes coming next.
0 commit comments