- From: Mathieu HENRI <p01@opera.com>
- Date: Sun, 20 May 2007 16:40:34 +0200
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 animations: 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
Received on Sunday, 20 May 2007 07:40:34 UTC