Hi guys,

Looking at STR 2115 and a few others, I find that text rendering is very
different not only between platforms, but even on the same platform with
slight changes in configuration.

I would like to suggest that we unify font rendering as much as possible
between configurations.

First, I would like to geberate a unittest that has multiple text samples
taken from a visually pleasing environment. We then modify our font
rendering code until our output matches that input a well as possible.

Sounds logical, but it is not that easy, because FLTK typesetting has a huge
flaw: the height of a font was once thought to be the same as the distance
from line to line in pixels. This is not true anymore at all. We already
discovered that a 14-pixel height font can have 12 to 18 pixel line spacing,
depending on the platform.

Many FLTK applications rely that font height is the same as fl_height, so I
suggest we make that true again ;-).

Suggestion 1: Wherever we talk about a font height (without an additional
argument), we mean the line spacing. That will keep all existing software
happy (some fonts may now look smaller, but the "dirt" from overlaps will be
gone).

Suggestion 2: Wherever a font height is requested or presented, we add an
additional argument in the API, an ENUM, that can specify in more detail
what we need: line spacing, average letter height, maximum letter heigh,
maximum ascent, maximum descent, etc. .

That we, we stay mostly compatible, but text rendering and readability
should improve greatly.

Suggestion 3: we do the same with fl_width... .

- Matthias


_______________________________________________
fltk-dev mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to