Possible bug when rendering 'r' in DejaVu Sans



I've been seeing this for a while, I'm not sure if it's a bug and if so,
in which component (Pango, FreeType, font maintainers?).  The letter
'r', when rendered many times in succession, is placed at irregular
intervals.  This seems to occur only when using the "DejaVu Sans" font,
but this font is the default choice for "application font" (used in text
fields and labels) of modern Linux distributions.

You can test this by creating a label containing the string
"rrrrrrr...", such as with this one-liner:

python -c 'import gtk;w=gtk.Window();w.add(gtk.Label("r"*50));w.show_all();gtk.main()'

The attached image shows the problem as seen on my system: every fourth
'r' is placed closer to the preceding letter, as if misplaced by a
rounding error.

It is baffling that this only seems to occur when GTK+ renders text
using the "DejaVu Sans" font.  If you choose another font, 'r' gets
rendered correctly.  If you use the Qt or Firefox[1] renderer, it also
shows correctly.  I was able to repeat this on GTK+ 2.10.6 and on GTK+
2.10.11.  Changing antialiasing settings had no effect.


[1]
You can test Firefox's renderer using something like
<span style="font-family: DejaVu Sans; font-size:
13">rrrrrrrrrrrrrrrrrrrrr</span>

Attachment: x.png
Description: PNG image



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]