Problem
Kiwi uses each path's screen CTM, which helps, but nested groups, transformed SVG roots, and unusual viewBox/preserveAspectRatio combinations can still produce incorrect geometry or stroke widths.
Impact
Real-world logos can import at the wrong scale, position, or stroke weight.
Suggested scope
- Build fixtures with nested
g transforms, root transforms, and non-square viewBox scaling.
- Verify geometry coordinates and stroke width are emitted in rendered CSS-pixel space.
- Handle non-uniform scaling intentionally, especially for stroke width.
Linear issue: NOT-76
Problem
Kiwi uses each path's screen CTM, which helps, but nested groups, transformed SVG roots, and unusual viewBox/preserveAspectRatio combinations can still produce incorrect geometry or stroke widths.
Impact
Real-world logos can import at the wrong scale, position, or stroke weight.
Suggested scope
gtransforms, root transforms, and non-square viewBox scaling.Linear issue: NOT-76