[Webkit-unassigned] [Bug 86010] . getTransformToElement doesn’t work correctly across embedded svg elements

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Aug 27 16:28:33 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=86010





--- Comment #5 from MH <martin.hejral at post.cz>  2012-08-27 16:28:35 PST ---
Created an attachment (id=160853)
 --> (https://bugs.webkit.org/attachment.cgi?id=160853&action=review)
Complex test case -- output data

BUG IS MARKED by ===>

This test also shows example transformation of point [100,100] using matrixes we get as output of .getScreenCTM() and .getTransformToElement():




-------------------
Chrome 13.0.782.220 / Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.220 Safari/535.1
-------------------

Coordinate System LEVEL0
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in svg#level0 coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level0 coordinate system [100,100]
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in rect#level0rect coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level0rect coordinate system [100,100]

Coordinate System LEVEL1
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in g#level1 coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to g#level1 coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in rect#level1rect coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level1rect coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in text#level1text coordinate system -> transformed to screen pixels [1010,1050]
===> getTransformToElement MATRIX: 5, 0, 0, 5, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to text#level1text coordinate system [500,500] !!BUG

Coordinate System LEVEL2
getScreenCTM(): 5, 0, 0, 5, 10, 50; point [100,100] in svg#level2 coordinate system -> transformed to screen pixels [510,550]
 getTransformToElement MATRIX: 1, 0, 0, 1, -2, -10; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level2 coordinate system [98,90]
getScreenCTM(): 5, 0, 0, 5, 10, 50; point [100,100] in rect#level2rect coordinate system -> transformed to screen pixels [510,550]
===> getTransformToElement MATRIX: 10, 0, 0, 10, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level2rect coordinate system [1000,1000] !!BUG





-------------------
Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.10.289 Version/12.01 (Core 2.10.289)
-------------------

Coordinate System LEVEL0
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in svg#level0 coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level0 coordinate system [100,100]
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in rect#level0rect coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level0rect coordinate system [100,100]

Coordinate System LEVEL1
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in g#level1 coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to g#level1 coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in rect#level1rect coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level1rect coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in text#level1text coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to text#level1text coordinate system [49,45]

Coordinate System LEVEL2
getScreenCTM(): 5, 0, 0, 5, 10, 50; point [100,100] in svg#level2 coordinate system -> transformed to screen pixels [510,550]
 getTransformToElement MATRIX: 1, 0, 0, 1, -2, -10; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level2 coordinate system [98,90]
getScreenCTM(): 5, 0, 0, 5, 10, 50; point [100,100] in rect#level2rect coordinate system -> transformed to screen pixels [510,550]
===> getTransformToElement MATRIX: 10, 0, 0, 10, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level2rect coordinate system [1000,1000] !!BUG




-------------------
FF 17.0a1 (2012-08-09) / Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:17.0) Gecko/17.0 Firefox/17.0
-------------------

Coordinate System LEVEL0
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in svg#level0 coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level0 coordinate system [100,100]
getScreenCTM(): 5, 0, 0, 5, 0, 0; point [100,100] in rect#level0rect coordinate system -> transformed to screen pixels [500,500]
 getTransformToElement MATRIX: 1, 0, 0, 1, 0, 0; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level0rect coordinate system [100,100]

Coordinate System LEVEL1
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in g#level1 coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to g#level1 coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in rect#level1rect coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level1rect coordinate system [49,45]
getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in text#level1text coordinate system -> transformed to screen pixels [1010,1050]
 getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to text#level1text coordinate system [49,45]

Coordinate System LEVEL2
===>getScreenCTM(): 10, 0, 0, 10, 10, 50; point [100,100] in svg#level2 coordinate system -> transformed to screen pixels [1010,1050] !!BUG
===> getTransformToElement MATRIX: 0.5, 0, 0, 0.5, -1, -5; point [100,100] in baseNode#level0 coordinate system -> transformed to svg#level2 coordinate system [49,45] !!BUG
getScreenCTM(): 5, 0, 0, 5, 10, 50; point [100,100] in rect#level2rect coordinate system -> transformed to screen pixels [510,550]
 getTransformToElement MATRIX: 1, 0, 0, 1, -2, -10; point [100,100] in baseNode#level0 coordinate system -> transformed to rect#level2rect coordinate system [98,90]

-- 
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