[Webkit-unassigned] [Bug 42176] New: Double transformation in CanvasRenderingContext2D::drawImage()
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Jul 13 10:29:11 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=42176
Summary: Double transformation in
CanvasRenderingContext2D::drawImage()
Product: WebKit
Version: 528+ (Nightly build)
Platform: Other
URL: http://280slides.com/Editor/
OS/Version: All
Status: NEW
Severity: Normal
Priority: P2
Component: New Bugs
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: jpetsovits at rim.com
CanvasRenderingContext2D::drawImage() contains calls to GraphicsContext::roundToDevicePixels() to transform src and dst rectangles, passing the transformed coordinates to CanvasRenderingContext2D::willDraw() and GraphicsContext::drawImage(). This is wrong, because both willDraw() and drawImage() handle transformations by themselves; especially painting a smaller source area of the image because the final device transformation scales pixels is a really bad idea. The reason it doesn't cause most browsers to break is that most browsers don't have a user-to-device transformation other than the identity matrix.
It does break for Android, and for our RIM port too. Other drawing calls in CanvasRenderingContext2D don't perform this kind of transformation before passing coordinates to willDraw() and the respective drawing function. drawImage() should work alike.
Patch coming below.
--
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