- From: Jelle Mulder <pjmulder@xs4all.nl>
- Date: Tue, 26 Nov 2013 07:19:48 +0800
- To: www-svg@w3.org
Tab, all Three-dimensional transform functions and the properties ‘perspective’, ‘perspective-origin’, ‘transform-style’ and ‘backface-visibility’ can not be used for the elements: <clipPath>, <linearGradient>, <radialGradient> and <pattern>. I understand the reasons for this, but I was wondering the following. If you have an external source file linked, you <use> it and change the fills to discard the gradients and patterns etc. Can you then use it with perspective. In other words, after cleaning the offending attributes? Is it possible to 3d transform a path and THEN use it to clip something after the transform? Can you 3d transform a bitmap image? Because then you can transform a path and clip your bitmap in it. This also touches a use case which would make it desirable to have some sort of pre rendering method in order to do 3d transforms on any SVG content. Clippath and Mask elements will be used a lot in illustrations. Clippath and Masks are a delight for any serious illustrator. It's a bit of a bummer that all that content will not be able to be rendered using 3d transforms. Probably with an unwitting author being baffled why it doesn't work, blaming the browser/viewer first. If there was some pre rendering method one could use, to first render and image of the object and do the 3d transform afterwards, we could discard the need for doing that on the server using imagemagick, Batik or Inkscape, creating some png that can be transformed. That should be computationally fairly light work I would think and would allow for more complex content to be transformed. Something like <image xlink:href="filename.svg#object" transform="pngRender(xSize, ySize, aspectRatio, renderedObjectId)" /> Cheers, Jelle Mulder On Tue, 26 Nov 2013 04:55:08 +0800, Tab Atkins Jr. <jackalmage@gmail.com> wrote: > On Mon, Nov 25, 2013 at 1:30 AM, Nicolas Froidure > <nfroidure@elitwork.com> wrote: >> Hi, >> >> I'm authoring a JS library to stream SVG Path Datas ( >> https://github.com/nfroidure/SVGPathData) and i would like to implement >> SVG >> 3D transforms. >> >> When combining multiple SVG 3D transformations, should i keep the z >> coordinate value and pass it to other transformations or should i always >> consider that z value is 0? > > The spec for 3d transforms is > <http://dev.w3.org/csswg/css-transforms/>, and the interaction with > SVG specifically is > <http://dev.w3.org/csswg/css-transforms/#svg-three-dimensional-functions>. > > ~TJ
Received on Monday, 25 November 2013 23:14:45 UTC