rect and ellipse use both width-relative and canvas-relative heights