[whatwg] several messages

Mathieu HENRI p01 at opera.com
Sun May 20 07:40:34 PDT 2007

Ian Hickson wrote:
> On Fri, 21 Jul 2006, Henri Sivonen wrote:
>> I gather that a normative reference to the Porter�Duff paper is needed: 
>> http://keithp.com/~keithp/porterduff/p253-porter.pdf
> On Mon, 24 Jul 2006, L. David Baron wrote:
>> I've written tests for the 11 operators defined in the paper, plus a 
>> test for 'darker' that assumes Quartz's PlusDarker operator [1]:
>>   http://dbaron.org/tests/canvas/composite-operations4
>> It seems like 'darker' is currently not interoperable, and might be 
>> unlikely to become interoperable, due to different availability of 
>> compositing operators across platforms.  (Quartz has PlusDarker. Mozilla 
>> uses the saturate operator that is provided by Cairo/libpixman (and also 
>> by XRender), which is described in [2] and [3], but seems to me to be 
>> quite different.)
>> One solution to that problem would be to remove 'darker' from the spec 
>> rather than defining it one way or the other.  Thoughts?
> I've referenced the paper and dropped 'darker'.

Please, please, pretty please, bring 'darker' back.
Rename it 'multiply' if you want, or if like me you think this name 
better reflects the operation previously known as 'darker'.

Here is a list of use cases for 'darker', I already applied in realtime 

1. filtering and/or separating the channels of a canvas *very* quickly.

2. multiplying images. This can be really useful to compose/combine images.

3. "burning" images. To do so, copy the canvas A onto a smaller canvas 
B, fill B with a white rectangle of medium/high opacity if you want, 
then draw B on top of A in 'daker'. Tada, you just enhanced the dark 
areas of A and even introduced some nice color bleeding.

Of couse all of this, actually ANY composite operation, can be achieved 
using ImageData objects ... but *MUCH* slower.

> On Wed, 28 Mar 2007, Philip Taylor wrote:
>> [snip a very long and detailed discussion of the operators, with much 
>> research]
> Wow. Thanks! Based on David's input above and on your own advice, and on 
> Vlad's later comments, I've simply removed 'darker' and referenced 
> Porter-Duff for the others.

Mathieu 'p01' HENRI
JavaScript developer, Opera Software ASA

More information about the whatwg mailing list