- From: Nikos Andronikos via GitHub <sysbot+gh@w3.org>
- Date: Mon, 08 Aug 2016 07:13:35 +0000
- To: public-svg-issues@w3.org
nikosandronikos has just labeled an issue for https://github.com/w3c/svgwg as "DoC_noResponse": == Define how meshes are rendered when children of shapes == The child content model of shapes allows paints server elements as children, including ‘mesh’. The [mesh gradient chapter](https://svgwg.org/svg2-draft/pservers.html#MeshGradients) says that “Unlike other paint servers, a mesh defined outside of a ‘defs’ section is rendered.” Does this mean that the mesh is rendered if used as a child paint server? Here’s an example, the mesh is used as a paint server AND rendered as an object: ``` <svg> <rect x=“100” fill=“child” transform=“translate(10, 10) scale(2,2)” opacity=“0.5"> <mesh transform=“rotate(30)">...</mesh> </rect> </svg> ``` This raises several questions: how do the transforms of ‘rect’ affect the mesh? Does the ‘rect’ element behave like a ‘g’ element (only transform affects the mesh) or does it behave like an ‘svg’ element (transform and x/y properties affect the mesh)? Things get more hairy if the 'mesh' element is a child of a 'text' or 'tspan' element.. One way to simplify this is to just say that meshes are rendered only when they are children of a container element (‘a’, ‘clipPath’, ‘defs’, ‘g’, ‘marker’, ‘mask’, ‘pattern’, ‘svg’, ‘switch’ and ‘symbol’.). They are not rendered under any other element. Also, a mesh as a child of ‘a’ is not rendered if it is also a child of ‘text’, like this: ``` <svg> <text x=“100” y=“100”>Hello <a href=“https://www.w3.org”><mesh>…</mesh> w3</a></text> </svg> ``` See https://github.com/w3c/svgwg/issues/140
Received on Monday, 8 August 2016 07:13:44 UTC