[css-compositing] some proposals

Last week I sent out some ideas to update the SVG composting spec:
http://www.w3.org/TR/SVGCompositing/.
Some people suggested some improvements which I integrated.

Here is the updated list of proposals:
a. split up the spec in 2 sections: Porter-Duff & Blending.
Porter-Duff are compositing primitives that describes how 2 images
(src+dst) can be merged.
Porter-Duff will continue to use the existing comp-op property.

Blending describes how the top image will 'blend' with its underlying
colors. The result of this is a new blended image. In the Adobe imaging
model and the existing SVG compositing spec it is assumed that this blended
image is composited with src-over.
However, there are use cases where you might not want 'src-over'. To
facilitate other composting operators, we will introduce a new keyword
'blend-mode'.

b. simplify Porter-Duff
-remove the clip-to-self property. The default behavior becomes
'clip-to-self: object'.

c. complete blend modes
- add the following missing blend modes: hue, saturation, color & luminosity
- define 'normal' as the default blend mode

d. update knockout
- change the value to be more descriptive. The new value
('replace'/'preserve') is confusing.
- provide a better description + correct the compositing formula
- knockout will only affect groups that use the new 'blend-mode' operator

e. update enable-background
- remove the ability to set up x, y, width & height.
- clarify the description and refer to the filters spec which already
defines this parameter
- replace the keyword with 'isolate' which is Adobe's equivalent. 'isolate:
isolated' = 'enable-background: new'. Keep the existing parameter for
backward compatibility.
- Any comp-op apart from 'src-over' will establish a new stacking context.

f. update all the formulas on the page
- fix incorrect math
- always do the math with pre-multiplied alpha.

g. replace 'src'/'dst' in the spec with 'source'/'dest'

Let me know if I missed something.

Rik

Received on Friday, 18 November 2011 05:11:17 UTC