W3C home > Mailing lists > Public > public-fx@w3.org > July to September 2012

[filter-effects] subregion as hard clipping region

From: Dirk Schulze <dschulze@adobe.com>
Date: Tue, 7 Aug 2012 13:31:25 -0700
To: "www-svg@w3.org list" <www-svg@w3.org>, "public-fx@w3.org" <public-fx@w3.org>
Message-ID: <F8B16E4C-0C49-4ADB-B4D5-1AEDF84741A6@adobe.com>
Hi,

Even if this has the prefix [filter-effects], it is related to SVG 1.1 as well. So I post this on both mailing lists: www-svg and public-fx.

A subregion on a filter primitive interacts as a hard clipping region. SVG misses to clarify what gets clipped, the input? the output? both?[1] So the new Filter Effects specification tries to solve this issue [2] according to previous resolutions (Cameron, can you find the resolution?). The default clipping behavior according to Filter Effects 1.0 is clip both, the input as well as the output.

I wrote a short example and this shows the difference between implementations on the clipping behavior (at least for input clipping).

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<filter id="filter" primitiveUnits="objectBoundingBox">
	<feFlood x="50%" y="50%" width="50%" height="50%" flood-color="green" result="inputClipped"/>
	<feFlood x="0%" y="0%" width="50%" height="50%" flood-color="green" result="input"/>
	<feOffset x="50%" y="50%" width="50%" height="50%" dx="0.5" dy="0.5" in="input" result="clipOut"/>
	<feComposite in="clipOut" in2="inputClipped" x="0%" y="0%" width="100%" height="100%"/>
</filter>
<rect width="200" height="200" filter="url(#filter)"/>
</svg>

It looks like we have a different behavior across viewers.
The following viewers clip the input: Opera, IE 10, Batik
Viewers which don't clip the input are: WebKit (Safari, Chrome), Firefox, Illustrator, Inkscape (last two with bugs)

Do we want to stay with the default behavior? Are the other viewers willing to change? I can do the change on WebKit. Would Firefox do it as well?

Second question: Do we want to introduce a new keyword to support clipping of input or output? Something like clip-input, clip-output, clip-both? Where could theses keywords be added? To the filter primitives with a new CSS property?

Greetings,
Dirk

[1] http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion
[2] https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#FilterPrimitiveSubRegion




filter-clipInput.svg
(image/svg+xml attachment: filter-clipInput.svg)

Received on Tuesday, 7 August 2012 20:31:59 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 7 August 2012 20:31:59 GMT