[Webkit-unassigned] [Bug 64237] New: [Skia] SVGMask fails on transformations

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Jul 10 05:10:04 PDT 2011


           Summary: [Skia] SVGMask fails on transformations
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: SVG
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: krit at webkit.org
                CC: caryclark at google.com, zimmermann at kde.org,
                    pkasting at google.com

Created an attachment (id=100222)
 --> (https://bugs.webkit.org/attachment.cgi?id=100222&action=review)
Mask on object that gets skewed

SVGMask fails on transformations, independent what gets transformed. This is caused by our transformation algorithm in WebCore/rendering/SVGImageBufferTools.cpp/.h. We draw the content of a mask into a new ImageBuffer. This ImageBuffer is used as a mask. To prevent any pixelation, we draw the mask in the screen space instead of the userspace of the target. Means we transform the CTM of the ImageBuffer context to the transformation base that is visible on the screen before drawing the mask content. That forces us to transform the CTM of our canvas to the screens CTM as well during the masking operation and unapply the CTM transformation afterwards. For some reason this doesn't work on Skia quite well. I attached an example. In this example the mask gets skewed by 22.5 degree. On Skia the skewing is 45 degree. Looks like the transformation that is used to change from user space to screen space gets applied twice.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list