A pack whose SVGs have no internal margin builds as fully healthy, but renders noticeably larger than Material icons at the same size:. Nothing in the audit, build, or report signals it.
Repro: three 16x16 SVGs whose artwork spans the full viewBox, taken from ilikerobots/polyicon#92.
Result: status: ok, quality: lossless, issueCount: 0, skippedIconCount: 0.
Measured:
- every glyph ink height is 100.0% of em
- MaterialIcons-Regular median ink height is 77.5% across 8,629 glyphs
- so these render roughly 1.29x larger than a typical Material icon at the same nominal size
The conversion itself is correct. Scaling by viewBox is the right behavior, and the geometry is faithful: a pixel diff of each glyph against its source SVG differs only at antialiasing edges (under 1.1% of pixels, max delta 47/255). The gap is that there is no signal the pack will look wrong once it is used in a Flutter app next to Material icons.
The data needed to detect this is already in report v3: glyphs[].fontBounds together with font.unitsPerEm.
Note that a global padding only corrects a pack that is uniformly full-bleed. It scales every glyph by the same factor, so it cannot normalize a pack that mixes full-bleed art with already-padded art. Verified on a mixed pack of 12: at padding: 0.08333 the full-bleed icons land at 83.4% while the already-padded ones drop to 62.4%.
A pack whose SVGs have no internal margin builds as fully healthy, but renders noticeably larger than Material icons at the same
size:. Nothing in the audit, build, or report signals it.Repro: three 16x16 SVGs whose artwork spans the full viewBox, taken from ilikerobots/polyicon#92.
Result:
status: ok,quality: lossless,issueCount: 0,skippedIconCount: 0.Measured:
The conversion itself is correct. Scaling by viewBox is the right behavior, and the geometry is faithful: a pixel diff of each glyph against its source SVG differs only at antialiasing edges (under 1.1% of pixels, max delta 47/255). The gap is that there is no signal the pack will look wrong once it is used in a Flutter app next to Material icons.
The data needed to detect this is already in report v3:
glyphs[].fontBoundstogether withfont.unitsPerEm.Note that a global
paddingonly corrects a pack that is uniformly full-bleed. It scales every glyph by the same factor, so it cannot normalize a pack that mixes full-bleed art with already-padded art. Verified on a mixed pack of 12: atpadding: 0.08333the full-bleed icons land at 83.4% while the already-padded ones drop to 62.4%.