Improving Linux Font Rendering

After spending the better part of a day reinstalling my operating system (protip: don’t uninstall your system compiler if you’re running a source based distro), I finally got my system back to the point where I had a browser and email.

Immediately the text rendering in Chromium stood out as particularly poor. I’ve seen similar issues before where poorly spaced, uneven strokes, or changing line spaces have indicated errors from misconfigured modelines with ye olde CRT, or mismatched sub-pixel rendering on modern LCDs. Nothing obvious was fixing it and I knew the system I had spectacularly nuked rendered text quite well.

Fortunately a helpful posts on the Arch wiki and Gentoo wiki pointed out hinting was likely at fault. Forcing full hinting seemed to work a treat. Below is the configuration I inserted next in line after lcdfilter.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
        <match target="font">
                <edit name="hintstyle" mode="assign">
                        <const>hintfull</const>
                </edit>
        </match>
</fontconfig>