<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Oct 16, 2009, at 8:10 PM, Robert O'Callahan wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">On Sat, Oct 17, 2009 at 4:01 AM, Philip Taylor <span dir="ltr"><<a href="mailto:excors%2Bwhatwg@gmail.com">excors+whatwg@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Yes, mostly. <a href="http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.uncovered.html" target="_blank">http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.uncovered.html</a><br>
has relevant tests, matching what I believed the spec said - on<br>
Windows, Opera 10 passes them all, Firefox 3.5 passes all except<br>
'copy' (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=366283" target="_blank">https://bugzilla.mozilla.org/show_bug.cgi?id=366283</a>), Safari 4<br>
and Chrome 3 fail them all.<br>
<br>
(Looking at the spec quickly now, I don't see anything that actually<br>
states this explicitly - the only reference to infinite transparent<br>
black bitmaps is when drawing shadows. But<br>
<a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#drawing-model" target="_blank">http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#drawing-model</a><br>

is phrased in terms of rendering shapes onto an image, then<br>
compositing the image within the clipping region, so I believe it is<br>
meant to work as I said (and definitely not by compositing only within<br>
the extent of the shape drawn onto the image).)<br></blockquote><div><br>Yes, I think that's pretty clear as written.<br><br>I think there is a reasonable argument that the spec should be changed so that compositing happens only within the shape. (In cairo terminology, all operators should be bounded.) Perhaps that's what Safari and Chrome developers want.<br></div></div></blockquote><div><br></div><div>This is the behaviour of the original canvas implementation (and it makes a degree of sense -- it is possible to fake composition implying an infinite 0-alpha surrounding when the default composite operator does not do this, but vice versa is not possible).  That said I suspect we are unable to do anything this anymore :-/</div><div><br></div><blockquote type="cite"><div class="gmail_quote"><div>
</div></div>Rob<br></blockquote>--Oliver</div><div><br></div></body></html>