The shape-rendering
attribute provides hints to the renderer about what tradeoffs to make when rendering shapes like paths, circles, or rectangles.
Note: As a presentation attribute, shape-rendering
can be used as a CSS property.
As a presentation attribute, it can be applied to any element but it has effect only on the following seven elements: <circle>
, <ellipse>
, <line>
, <path>
, <polygon>
, <polyline>
, and <rect>
html, body, svg { height: 100%; }
<svg viewBox="0 0 420 200" xmlns="http://www.w3.org/2000/svg"> <circle cx="100" cy="100" r="100" shape-rendering="geometricPrecision"/> <circle cx="320" cy="100" r="100" shape-rendering="crispEdges"/> </svg>
Usage notes
Value | auto | optimizeSpeed | crispEdges | geometricPrecision |
---|---|
Default value | auto |
Animatable | Yes |
auto
- This value indicates that the user agent shall make appropriate tradeoffs to balance speed, crisp edges and geometric precision, but with geometric precision given more importance than speed and crisp edges.
optimizeSpeed
- This value indicates that the user agent shall emphasize rendering speed over geometric precision and crisp edges. This option will sometimes cause the user agent to turn off shape anti-aliasing.
crispEdges
- This value indicates that the user agent shall attempt to emphasize the contrast between clean edges of artwork over rendering speed and geometric precision. To achieve crisp edges, the user agent might turn off anti-aliasing for all lines and curves or possibly just for straight lines which are close to vertical or horizontal. Also, the user agent might adjust line positions and line widths to align edges with device pixels.
geometricPrecision
- Indicates that the user agent shall emphasize geometric precision over speed and crisp edges.
Specifications
Specification | Status | Comment |
---|---|---|
Scalable Vector Graphics (SVG) 2 The definition of 'shape-rendering' in that specification. |
Candidate Recommendation | No change |
Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of 'shape-rendering' in that specification. |
Recommendation | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
shape-rendering | Chrome ? | Edge ? | Firefox ? | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android ? | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
Legend
- Compatibility unknown
- Compatibility unknown