Bug 7438 - Lower-case "m" in DejaVu Sans Mono 9 has rendering problems
Summary: Lower-case "m" in DejaVu Sans Mono 9 has rendering problems
Status: RESOLVED FIXED
Alias: None
Product: freetype
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Werner Lemberg
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-07-06 02:21 UTC by Mary Ellen Foster
Modified: 2008-12-06 16:16 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
vim screenshot, immediately after typing (3.46 KB, image/png)
2006-07-06 02:22 UTC, Mary Ellen Foster
Details
vim screenshot, after forcing repaint (3.69 KB, image/png)
2006-07-06 02:22 UTC, Mary Ellen Foster
Details
vim screenshot, typing again after repaint (3.39 KB, image/png)
2006-07-06 02:23 UTC, Mary Ellen Foster
Details

Description Mary Ellen Foster 2006-07-06 02:21:33 UTC
The lower-case "m" in DejaVu Sans Mono 9 loses its right-most vertical line. For
example, I'll attach screenshots from Vim 7.0 running under KDE on Fedora Core 5
with anti-aliasing turned on. The first one is right after I've typed the
characters shown; the second is after covering the window and forcing it to
repaint; while the third shows that, when I type some more into the window, the
newly-typed characters still miss the vertical bar, while the old ones look
fine. I have similar symptoms with "konsole" running on the same machine.
Comment 1 Mary Ellen Foster 2006-07-06 02:22:27 UTC
Created attachment 6134 [details]
vim screenshot, immediately after typing
Comment 2 Mary Ellen Foster 2006-07-06 02:22:54 UTC
Created attachment 6135 [details]
vim screenshot, after forcing repaint
Comment 3 Mary Ellen Foster 2006-07-06 02:23:16 UTC
Created attachment 6136 [details]
vim screenshot, typing again after repaint
Comment 4 Ben Laenen 2006-07-06 05:47:55 UTC
The problem occurs because the "m" glyph is too wide at that size.

Do you use the autohinter? If the answer is yes, then there is nothing we can 
do, the fix should be made in the autohinter, or in Qt, which should allow 
glyphs to be wider than the glyph width in monospaced fonts (Qt4 seems to be 
doing it right, but off course, we're still a long way from KDE4).

I can only see this effect at smaller sizes (8 and 9 ppem, which is probably 
around font size 6 on your screen). It should be fixed at those smaller sizes, 
but the problem you have occurs at larger sizes, and should not happen when 
the hinting instructions embedded in the font are used (i.e. when you enable 
the bytecode interpreter from FreeType)
Comment 5 Mary Ellen Foster 2006-07-06 06:29:11 UTC
Thanks for pointing me in the right direction: I checked my KDE settings and
found that I had set "Hinting style" to "medium" under anti-aliasing
configuration (I assume that's the default, as I'd never changed it). I get the
same symptoms with "slight"; with "none", the character is properly formed but
very blurry, while with "full" it looks all right.
Comment 6 Ben Laenen 2006-07-06 07:50:13 UTC
So the problem is fixed then? Odd, cause I never thought setting hinting style 
to full instead of medium would work.

I was talking about the autohinter in Freetype, where the bytecode interpreter 
should be used instead (because it gives a much better result). To my 
knowledge, Fedora doesn't include that bytecode interpreter due to patents. To 
activate the bytecode interpreter you have to compile Freetype yourself (or 
find a good rpm for it).

Anyway, as it is fixed, I guess I can resolve this into NOTOURBUG then
Comment 7 Nicolas Mailhot 2008-12-06 11:25:20 UTC
Mass move of freetype bugs to the new freetype product
Comment 8 Nicolas Mailhot 2008-12-06 11:27:47 UTC
Reopen the NOTOURBUG reports now they're correctly affected
Comment 9 Werner Lemberg 2008-12-06 16:16:45 UTC
I close this bug; it should be fixed since FreeType 2.3.3.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.