On Jan 8, 2009, at 2:17 AM, Ariya Hidayat wrote:
Now I want to obtain the absolute coordinates of <img> in the
webkit,
Through code how to achieve
Hint: have a look at RenderImage::paintReplaced() function. If you
get the
render object for that <img>, which is a RenderImage instance, then
you are
set.
HTMLImageElement already has x() and y() methods that return the
absolute coordinates of the image. However, these methods don't take
CSS transforms into account.
Node::getRect() will also give you back an absolute rect for a node,
but again it's broken with transforms.
If you're in renderer code, the correct solution is to call
localToAbsolute() on the image's renderer, passing 'true' for the
useTransforms parameter.
In general, you should be wary of using absolute coordinates unless
you absolutely have to. I've been fixing many bugs caused by the use
of absolute coordinates for event handling and repainting that show up
when CSS transforms are being used. The general rule should be that
your coordinate math should be as "local" as possible.
Simon
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev