feOffset default filter subregion (ACTION-3345)

Hi,

here's some feedback on the feOffset issue[1] (part of my ACTION-3345).

For feOffset Opera doesn't default the feOffset's subregion to the union  
of its input's subregions[2] because we thought it was non-intuitive.  
Snippet illustrating what this is about:

<filter id="feoffset1" primitiveUnits="objectBoundingBox" x="0%" y="0%"  
width="200%" height="200%">
   <feFlood width="100%" height="100%" flood-color="lime"/>
   <feOffset dx="0.1" dy="0.2"/>
</filter>

I read the above as:
* the filter region is 200% of the bbox of the element that uses the filter
* floodfill the bbox area with green
* move the filled area (0.1*bbox.x, 0.2*bbox.y)

I think it's not really intuitive to clip the feOffset since it didn't  
actually specify a subregion, I'd rather see it as the feOffset can move  
things around whereever it likes (but inside the filter region). In case  
feOffset specifies a subregion then it should get clipped, e.g <feOffset  
dx="0.1" dy="0.2" width="50%" height="50%"/>.

I'd prefer to make an exception for feOffset (as is done for feTile  
already) and say that the default subregion for feOffset is the filter  
region.

Also see the bug reported here[3] with testcase[4] (draft).

[1] http://www.w3.org/2012/08/16-svg-minutes.html#item04
[2] http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion
[3] http://lists.w3.org/Archives/Public/www-svg/2010Oct/0122.html
[4]  
http://dev.w3.org/SVG/profiles/1.1F2/test/harness/htmlObject/filters-offset-02-b.html

-- 
Erik Dahlstrom, Core Technology Developer, Opera Software
Co-Chair, W3C SVG Working Group
Personal blog: http://my.opera.com/macdev_ed

Received on Thursday, 30 August 2012 13:00:24 UTC