- From: Rik Cabanier <cabanier@gmail.com>
- Date: Wed, 7 Aug 2013 02:05:19 -0700
- To: www-svg <www-svg@w3.org>
- Message-ID: <CAGN7qDAXrNwP-9Z=nNpot-muz48VhfOWVtOnE1pKWjMQO-iEpw@mail.gmail.com>
The blending specification currently calls out that clipping should introduce isolation [1]. So if you have content as follows: <circle id="a"/> <g clip-path="..."> <circle id="b" style="mix-blend-mode:difference"/> </g> circle 'b' won't blend with circle 'a'. I added this because we were worried that graphics libraries wouldn't not be able to support this. Now that we started implementing the feature, it turns out that this limitation is not needed when the browser uses the clipping capabilities of the underlying graphics library. For 'simple' clips (that are the vast majority), all browsers use the clipping code. However, for more complex clips, certain browsers turn the clip into a mask and this will execute a different code path that does isolate. There are three options (from my least to most desired): 1. keep behavior as specified in the spec. 2. specify that complex clips cause isolation but not simple clips. 3. specify that clipping never isolates. Browsers will need to find a way (ie planarization/path collapsing) to keep using the clipping code path. Thoughts? 1: http://www.w3.org/TR/compositing-1/#csscompositingrules_SVG
Received on Wednesday, 7 August 2013 09:05:50 UTC