Bug 81528

Summary: Applying stroke with globalCompositeOperation set to source-in, source-out, destination-in, destination-atop, copy displays incorrectly
Product: WebKit Reporter: Jim Allanson <jimallanson>
Component: CanvasAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal Keywords: HTML5
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows 7   
URL: http://jsfiddle.net/dH7KW/
Attachments:
Description Flags
Expected behaviour, as tested in Firefox 10, IE 10, Opera 11
none
Incorrect Rendering in Webkit none

Jim Allanson
Reported 2012-03-19 11:15:50 PDT
Created attachment 132612 [details] Expected behaviour, as tested in Firefox 10, IE 10, Opera 11 When a stroke is applied to a canvas with the globalCompositeOperation set to: - source-in - source-out - destination-in - destination-atop - copy The composition does not occur as expected, with the destination image still visible where it should not be. Reference rendering from Mozilla Firefox 10: http://i.imgur.com/zoQsB.png (Identical to IE 10 & Opera 11) Webkit rendering: http://i.imgur.com/NiNpO.png jsFiddle testing stroke composition for each globalCompositeOperation: http://jsfiddle.net/dH7KW/
Attachments
Expected behaviour, as tested in Firefox 10, IE 10, Opera 11 (22.07 KB, image/png)
2012-03-19 11:15 PDT, Jim Allanson
no flags
Incorrect Rendering in Webkit (22.65 KB, image/png)
2012-03-19 11:16 PDT, Jim Allanson
no flags
Jim Allanson
Comment 1 2012-03-19 11:16:45 PDT
Created attachment 132613 [details] Incorrect Rendering in Webkit
Jim Allanson
Comment 2 2012-03-27 01:28:26 PDT
I forgot to mention in the original report, this is fairly easy to work around. Just create a new Canvas element, apply the stroke to it, then draw that canvas to the destination using drawImage() with the desired globalCompositeOperation set.
Jim Allanson
Comment 3 2012-03-27 01:37:02 PDT
Duplicate of bug 66762, missed this the first time I searched. *** This bug has been marked as a duplicate of bug 66762 ***
Note You need to log in before you can comment on or make changes to this bug.