On Mon, Apr 21, 2008 at 09:51:26AM -0700, Josh Andler wrote:
Unfortunately, the problem is that we now have figure out where some filter related issues lie. I tried opening up the file in Batik, but it sees it as invalid. Are we producing invalid svg, or is batik just really picky? Also, some filters render differently in Firefox 3 & Opera 9.5.
We are producing an invalid SVG. The 'in2' input is a required attribute in the spec. It isn't defined to default to the previous filter result like 'in'. Firefox 3 applies the same logic as Inkscape, but they have different priorities.
I've got a load of bugs to file about filters, but I'll just list them here for reference because writing them all up will be more work than I've got time for at the moment.
* Displacement mapping: input 0.5 doesn't give identity * Result identifiers can become conflicted (with undo?) * in2 attribute is required by the SVG spec * Blur of background sources shows artifacts * feFlood doesn't apply until you touch the opacity slider * feTurbulence doesn't apply until you touch the octaves slider * feMorphology radius operates as an integer (should be increments of 0.5) * feMorphology result is offset by 1px down and right * filters aren't redrawn on svg:image when settings change * sometimes settings are shown for the wrong instance of an effect * bbox for filter update on settings change isn't the filter region * spurious inputs/wires for feFlood, feTurbulence, feImage * stroke/fill paint inputs don't work? * matrix values aren't applied on blurring the matrix widget
Maybe some wishlist items too:
* Comments for documenting filters * user labels for identifing effects * preview the result of each effect * adjust values in matrix inputs with cursor up/down keys * opacity effect (implemented with feColorMatrix or feComponentTransfer) * usable defaults for specular/diffuse lighting
Dan