-
Notifications
You must be signed in to change notification settings - Fork 64
Description
As stated in #328, there seems to be an issue around skew, skewX, and skewY.
I don't know enough the SVG specification, but there seems to be two different incompatible specifications of skew (and its variants skewX and skewY):
https://drafts.csswg.org/css-transforms/#svg-skewX
https://drafts.csswg.org/css-transforms/#funcdef-transform-skewx
In one case, skew only expects a number (meaning an angle in degrees). In the other case, skew expects an angle which is composed of a number and a unit (rad , turn, grad, deg), sometimes with an additional 0 value, sometimes not.
The question is what should we do about `SkewX? Should it accepts an angle, or a float?
https://github.com/ocsigen/tyxml/blob/master/lib/svg_types.mli#L302
The issue is that currently TyXML refuses a correct syntax transform="skewX(42)" while printing an invalid transform="skewX(42deg)" in some contexts.
I can see several ways to resolve this. One could be to use angle internally, but accept both variants (with or without unit), and print-out the right version (potentially converting into degrees when the variant with unit is not accepted).