I added some more rules for TEXT and TSPAN elements.
PATHS, LINES, POLYLINES, & POLYGONS: -transform coordinates of all points -do not transform line thickness CIRCLES & ELLIPSES -transform center point and radii -do not transform line thickness RECTANGLES -transform location of corners -transform the radii of any rounded corners -do not transform line thickness TEXT & TSPAN -transform absolute positioning attributes ("x" & "y"). -do not transform relative positioning attributes ("dx" & "dy"). -do not scale font size -do not scale letter spacing, word spacing, etc.
Perhaps a transform attribute could have multiple flags which would allow some flexibility for text handling. e.g. there should be a choice of: a) scaling everything (the only option we have today) b) scaling everything except line thickness c) scaling everything except line thickness and text d) scaling everything except text
It is important that the choice be applied to each transformation separately. A single drawing may have nested transformation where the behaivor of each transformation needs to be treated with different rules.
-crjw
Scaling via an explicit "transform" attribute and zooming via a user interface are two completely different things and should be treated as such.
Personally I am not excited about having line thickness stay the same size when a user is zooming in and out of a drawing. Zooming out too far would cause elements to overlap.
I would be interested in the ability to place a flag on a "transform" attribute such that line thickness and font size could be excluded from the transformation. Something like this: PATHS,LINES,POLYLINES,POLYGONS: -transform coordinates of all points -do not transform line thickness CIRCLES,ELLIPSES -transform center point and radii -do not transform line thickness RECTANGLES -transform location of corners -transform the radii of any rounded corners -do not transform line thickness TEXT -transform only the location of the text -do not scale font size -do not scale letter spacing, word spacing, etc.
I've been tasked by the SVG Working group to summarize scaling issues in SVG. What I mean by scaling issues, is things that one perhaps doesn't want scaled when zooming in or out on a drawing. An example would be a non-scaling line width for technical drawings (this has already been accepted for inclusion into SVG 2.0).