[haiku-development] Re: Default Font Choice In Haiku should likely be changed

  • From: Stephan Aßmus <superstippi@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 20 Oct 2011 09:26:14 +0200

On 20.10.2011 05:35, John Scipione wrote:
> stippi wrote earlier:
    The big surprise for me was that pretty much /all/ fonts I tried
    (including Droid) do not look nearly as crisp in Haiku as Dejavu.
    The readability of Dejavu is far superiour (in Haiku) to any other
    font, except for maybe Ubuntu. There are two reasons:

      * Many fonts are not rendered crisp with our hinting and subpixel
    anti-aliasing. Droid and many other fonts have colored edges along
    perfectly straight glpyh stems. It may be that the hinting mechanism
    (which can be custom bytecode in a TTF) is optimized for another
    type of subpixel antialiasing (Haiku has it's own, it's not using
    Freetypes filter).

BTW, the Droid fonts and others don't have this problem at all sizes. Dejavu just happens to be crisp with our subpixel rendering at all sizes, but at some sizes, Droid is just as crisp.

      * The second problem is about kerning. Virtually all fonts except
    Dejavu have the problem that characters attach to each other,
    especially at smaller sizes.

    I specifically tried Dejavu at 8pts to watch this glyph attaching
    problem, and Dejavu is virtually the only font I find readable at
    8pt of the fonts I tried. Droid isn't so bad in this test, but by
    far not as crisp as Dejavu.


Perhaps Google's new Roboto font could be an option, It is an
Arial/Helvetica clone. I am not sure about the license, but it might be
similar to the Droid fonts.

http://briefmobile.com/download-roboto-font-from-android-4-0

Certainly, those are good options from a licence and technical perspective (huge glyph coverage). But like I already mentioned, Roboto and Droid are designed to be associated with Android, so that makes them a less good choice for branding reasons, just like the Ubuntu font.

After my own testing, I think Dejavu is a good default font. What should be done though, and what I would like to work on if I had some time, is to improve the font rendering and to add more configuration options. That would result in more fonts looking great on Haiku. For example, if subpixel anti-aliasing is turned off (as it is by default), the biggest problem with many fonts I tested would disappear, which is the strongly colored edges when the hinting does not perfectly align to pixels (for whatever reasons). With another subpixel filtering option, i.e. the built-in Freetype filter, font rendering would look exactly as it does on Ubuntu, which is certainly the best implementation compared to Windows and Mac OS*.

And then we should just include more fonts, so that it's easier to change them out of the box.

*) What I hate about Windows font rendring: no horizontal anti-aliasing, and the new accelerated rendering looks degraded, compared to before. What I hate about Mac font rendering: It may try to look true to the font, but it's just blurry. In Ubuntu, I also have the option to use less hinting, adjustable in multiple steps to find a sweet spot, but the sub-pixel filtering is just better and while it looks blurry compared to Haiku, it's still smooth and even, unlike on the Mac where glyphs look wobbly even on a gamma calibrated screen.

Best regards,
-Stephan

Other related posts: