The coordinate system of a gradient can have several properties.
We can specify properties that follow the current coordinate system
and follow the bounding box.
This interface to store and manage its properties in the gradient class.
Still, I'm skeptic at this since this might increase complexity,
- Why *Only* gradient should support this?
- What happens if user change the unit without any coordinate values?
- If it's necessary, then how about cairo, android, skia handle this?