Hello,

I have some questions regarding zooming and offsetWidth/Height/Top/Left.
Currently, Element.offset* properties return imprecise values when zooming 
in/out. One of the bugs describing this problem would be Issue 104074: 
offsetWidth of element is shrinking when zooming 
in<http://code.google.com/p/chromium/issues/detail?id=104074> with a simple 
test case<http://jsfiddle.net/V4HQc/>.
The product I’m working on also embeds WebKit and it would really need more 
precision from Element.offset*. We’ve done some testing by making offset*s to 
return floats and this approach appears to improve precision a lot.

I found in archive<http://lists.webkit.org/pipermail/webkit-dev/2011-June.txt> 
an email from Levi Weintraub<mailto:[email protected]>, sent in June 2011, 
saying:
… Changing rendering (and hit testing) to use floats does not necessarily mean
that we need to expose floats through the dom api, however if we are to
support sub-pixel layout (i.e. style=?left: 12.3px?) this would be required.
Specifically we?d need to change the offsetLeft/Top/Width/Height properties
to return floating point values 
[2]<https://bugs.webkit.org/show_bug.cgi?id=54018>.
The meta bug 60318<https://bugs.webkit.org/show_bug.cgi?id=60318>  (Switch away 
from integers …) Levi was working on is already fixed and the inner bugs 
(addressing this problem) bug 
54018<https://bugs.webkit.org/show_bug.cgi?id=54018> (Make offset* return 
doubles instead of ints) and bug 
39884<https://bugs.webkit.org/show_bug.cgi?id=39884> - Full Page Zoom: rounding 
errors with element metrics are still opened and theirs resolution is not clear.

What’s your opinion on this subject? Were there some other discussions on it I 
couldn’t find? Is there a chance for making offset properties returning floats 
to be accepted? What are the implications of making this change in terms of 
specifications?

Thank you,
Ion Rosca
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to