- From: Ian Hickson <ian@hixie.ch>
- Date: Fri, 11 May 2007 02:19:54 +0000 (UTC)
On Sun, 1 Oct 2006, Benjamin Joffe wrote: > > I have set up a few pages to demonstrate bugs with Opera's canvas > implementation. You can see it here: > http://abrahamjoffe.com.au/ben/opera_canvas_bugs/index.htm , I am sure > that the first 3 are genuine Opera bugs but the 4th one might not be > because I do not think that the WhatWG spec is specific enough with > nested clipping paths, none-the-less I feel that the way Firefox handles > the script is more correct than how Opera does. Would you agree? The first test is: http://abrahamjoffe.com.au/ben/opera_canvas_bugs/bug_scale.htm Definitely an Opera bug. I've added a test based on this to my test suite: http://www.hixie.ch/tests/adhoc/html/canvas/031.html The second test: http://abrahamjoffe.com.au/ben/opera_canvas_bugs/bug_restore.htm ...is actually a bug in Firefox and Safari: http://www.hixie.ch/tests/adhoc/html/canvas/032.html The third test: http://abrahamjoffe.com.au/ben/opera_canvas_bugs/bug_rect.htm ...seems to work everywhere now. The fourth test: http://abrahamjoffe.com.au/ben/opera_canvas_bugs/bug_clip.htm ...is indeed an Opera bug. The spec seems clear, though: # The clip() method must create a new clipping path by calculating the # intersection of the current clipping path and the area described by the # current path (after applying the current transformation), using the # non-zero winding number rule. Is that confusing? I've created this test: http://www.hixie.ch/tests/adhoc/html/canvas/034.html ...based on your test. The fifth and final test: http://abrahamjoffe.com.au/ben/opera_canvas_bugs/bug_data.htm ...seems to work everywhere now. Thanks for the feedback, -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
Received on Thursday, 10 May 2007 19:19:54 UTC