[Webkit-unassigned] [Bug 18212] New: Canvas rendering changes between Safari and Nightlies

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Mar 29 17:44:28 PDT 2008


http://bugs.webkit.org/show_bug.cgi?id=18212

           Summary: Canvas rendering changes between Safari and Nightlies
           Product: WebKit
           Version: 526+ (Nightly build)
          Platform: Macintosh
               URL: http://appkainime.bouniol.homeip.net/
        OS/Version: Mac OS X 10.5
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: dimitri008 at mac.com


I am using a canvas to render images at a perspective on my site by rendering
each line of pixels at a different scale.
The canvas object is all the icons that appear at the top of the page in the
grey bar.
In Safari (3.1 and below), everything renders quickly and looks normal, but in
recent Nightly builds, rendering time is significantly increased and rendering
looks very bizarre.
I think it has something to do with drawing and scaling images using
transforming methods, but I'm not sure.

Site: http://appkainime.bouniol.homeip.net/
Javascript: http://appkainime.bouniol.homeip.net/js/master.js

Methods of interest:

- drawAppFlow()
Calls drawInContextWithPerspectiveAndArg several times at different positions
with each image to be drawn at a perspective.

- drawInContextWithPerspectiveAndArg(drawFunction, ctx, x, y, z, width, height,
arg)
Draws the drawFunction(ctx, arg) in the context ctx using the one-point
perspective at (x, y, z), by calling drawFunction(ctx, arg) for every vertical
pixel line, then clip, scale, and apply shading to the result accordingly so a
perspective is acheived.
drawFunction is always drawImage(ctx, image)
arg is an Image object to be passed to drawImage

- drawImage(ctx, image)
Draws the image in the context ctx with a shadow, or if the image is not yet
loaded, draws a grey box instead.

In the meantime, I'm going to try to shorten the code down as much as possible
and get a test case of the issue.


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



More information about the webkit-unassigned mailing list