All the improvement are welcome. though the suggestion may needs understanding how they behaves on font formats as you mentioned. so I suppose providing case-by-case examples may be hepful for users. it can be done in the configuration files without modifying the code at least. On Thu, Oct 8, 2015 at 5:39 PM, Nikolaus Waxweiler <madigens@xxxxxxxxx> wrote: > (reposting because I wasn't subscribed to the list) > > Hello fontconfig people, > I'm currently trying to save the world, ehm, bring more order into the > font rendering world. > > The first problem is, I personally don't like hintslight/medium/full > because they are coarse descriptions that mean different things to > different font formats: > > 1. OpenType/CFF (.otf) fonts: medium == full == snapping glyphs to the > y-axis only. By design, this tries to preserve outline fidelity. > 2. TrueType (.ttf) fonts: Full currently (FreeType 2.6.1) snaps to > x-and-y-axis and FT doesn't fully handle ClearType yet (so no > y-only-snapping like on Windows). Medium is similar to full, but seems > to be less aggressive on the x-axis. Both sacrifice outline fidelity and > "harmoniousness" for absolute sharpness with varying success. Even when > ClearType is fully handled, it depends on the bytecode in the font if > you get y-only or x-and-y snapping. > 3. Postscript fonts: not sure, but the native hinter produces > sub-optimal results anyway. > 4. Slight invokes the autohinter regardless of font format. Like for > .otfs, it snaps to the y-axis only. > > The problem is nicely visible when you go medium or full and mix font > formats. A default installation of Fedora will have Cantarell in > OpenType/CFF format in the UI and DejaVu (.ttf) on the console. > Cantarell is y-snapped (and slightly emboldened), DejaVu > x-and-y-snapped. The difference is jarring. > > The second problem is that FreeType currently doesn't fully handle > ClearType. TrueType fonts developed with ClearType in mind will look > sub-optimal by default. The OpenType/CFF hint support is top notch in > contrast, thanks to Adobe's contributed CFF engine. The autohinter has > been doing a mighty fine job across the board and for different > languages for a while. > > > I propose that fontconfig defaults to the autohinter == hintslight > globally and sets hintfull only for OpenType/CFF fonts. That way, the > default for all fonts is to snap them to the y-axis, leading to a much > more coherent and harmonious look out of the box. Ubuntu has been doing > global hintslight for years and I personally found rendering to be > mostly fine there. > > Ideally, fontconfig exposes something like "hintnative", "hintauto", > "hintnone" and the modifiers "y-only", "x-and-y-if-supported", and > scraps "hintslight/medium/full" and the "hinting" and "autohint" attributes. > > Thoughts? > _______________________________________________ > Fontconfig mailing list > Fontconfig@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/fontconfig -- Akira TAGOH _______________________________________________ Fontconfig mailing list Fontconfig@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/fontconfig