
2 answers:
Le 19/12/2010 17:16, Jasper van de Gronde a écrit :
The most fundamental clash might be that SVG considers the fill and stroke of an object to be part of the same object, and cannot apply different filters to them. I'm also not sure that that makes sense (at least not within the current framework). If you're talking about stroking or filling as being a kind of "effect" that acts upon an abstract shape, then I think that could indeed make sense. Is there any application that does this? And/or can you make more detailed mockups of how you would like to see this kind of thing work in Inkscape?
Also, SVG doesn't really allow the use of making filters that can be reused in other filters (as far as I know), but this is so incredibly useful that we'll definitely figure something out (as Ivan wrote there is already some work underway).
Yes I can write a mockup and what I think about, but I won't for the next couple of weeks (job, Christmas, things like that ^^ ) but since I can touch my computer again, I will. Basically, I'm thinking about a abstract shape without fill/stroke (just its shape made by the normal tools), having just a reference to a filter (in svg:defs) where you have all definitions for colors, filters and so on.
It sounds like you're looking to use BackgroundImage as source. This is supported, but does not work perfectly with all filters yet (basically it only works with filters that work per pixel, like the color matrix filter). It also has some other caveats, but that's a bit beyond the scope of this thread, if you're having trouble getting it to work, drop us a line.
Yep it's BasckgroundImage as source. As I tried it and didn't work at all, so I figured that it was for another purpose (but which one?) and stopped to use it. It just works with pixels? Pity ^^. Sorry but I don't understand: When you rendering the picture, layer by layer, object by object, from the deepest one to the closest one, it's not possible to check if the filter in the next object needs the 'rendering at this point' of the picture to have its 'backgroundImage as source'? Or maybe it's out of the .svg specifications? Example: You have a picture with 10 shapes. Object 1 the deepest, object 10 the closest. The rendering start with the object 1, draw it, next the 2nd, renders it, and so on. At the 8th, the object says: Hey! I need the rendering of the picture at this point because I do. The render answers OK, give the rendered picture, and waits until object 8 has finished its stuff. The object 8 keeps only the needed part and use it. Then it gives the result to the renderer which continues its job. The renderer doesn't work like this?
Regards, François.