The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "Fonts"
(No difference)
|
Revision as of 18:58, June 27, 2014
Install the packages
Linux font quality is a chronic issue, by default fonts configuration far from ideal look. This can solved by rebuilding media-libs/fontconfig with the infinality USE flag which applies the infinality patch set. Infinality patches were previously available only in the lcd-filtering overlay and have now been merged into the main Funtoo portage tree.
root # echo "media-libs/fontconfig infinality" >> /etc/portage/package.use root # emerge -uN fontconfig
Advanced configuration
Fontconfig
Default configuration
root # eselect fontconfig enable 10-antialias.conf root # eselect fontconfig enable 10-autohint.conf root # eselect fontconfig enable 10-hinting.conf root # eselect fontconfig enable 10-hinting-slight.conf root # eselect fontconfig enable 10-sub-pixel-rgb.conf root # eselect fontconfig enable 11-lcdfilter-default.conf root # eselect fontconfig enable 70-no-bitmaps.conf root # eselect fontconfig disable 10-hinting-full.conf root # eselect fontconfig disable 10-hinting-medium.conf root # eselect fontconfig disable 10-no-sub-pixel.conf root # eselect fontconfig disable 10-sub-pixel-bgr.conf root # eselect fontconfig disable 10-sub-pixel-vbgr.conf root # eselect fontconfig disable 10-sub-pixel-vrgb.conf root # eselect fontconfig disable 10-unhinted.conf
Linux configuration
Same as default configuration except:
root # eselect fontconfig enable 21-hinting-small-aquabase-slight.conf root # eselect fontconfig enable 21-hinting-small-browallia-slight.conf root # eselect fontconfig enable 22-hinting-courier-italic-slight.conf
Infinality’s configuration
Same as default configuration except:
root # eselect fontconfig enable 15-hinting-tt-instructed-full.conf root # eselect fontconfig enable 20-hinting-small-fonts-slight.conf root # eselect fontconfig enable 21-hinting-small-aquabase-slight.conf root # eselect fontconfig enable 21-hinting-small-browallia-slight.conf root # eselect fontconfig enable 22-hinting-courier-italic-slight.conf root # eselect fontconfig enable 25-hinting-small-arial-black-slight.conf
Windows configuration
Same as default except:
root # eselect fontconfig disable 10-autohint.conf root # eselect fontconfig disable 10-hinting-slight.conf root # eselect fontconfig enable 10-hinting-full.conf root # eselect fontconfig enable 15-hinting-non-tt-instructed-slight.conf root # eselect fontconfig enable 20-hinting-small-fonts-slight.conf root # eselect fontconfig enable 21-hinting-small-aquabase-slight.conf root # eselect fontconfig enable 21-hinting-small-browallia-slight.conf root # eselect fontconfig enable 22-hinting-courier-italic-slight.conf root # eselect fontconfig enable 25-hinting-small-arial-black-slight.conf
OSX configuration
Same as default configuration except:
root # eselect fontconfig disable 10-autohint.conf root # eselect fontconfig disable 10-hinting.conf root # eselect fontconfig disable 10-hinting-slight.conf root # eselect fontconfig enable 10-unhinted.conf root # eselect fontconfig enable 15-hinting-tt-instructed-none.conf
Freetype
Freetype can be configured through environment variables (see /etc/env.d/99lcdfilter for a list of the variables and their description). Those variables can be overridden on a per-user basis by either redefining them in a startup file (such as ~/.bash_profile) or by sourcing the /usr/lib/ft-settings.sh script with the desired style in parameter (you can, of course, source the script from a startup file).
usage: source ft-settings.sh <style>
Possible styles: default - Use default settings. A compromise that should please most people osx - Simulate OSX rendering ubuntu - Simulate UBUNTU rendering linux - Generic Linux style - no snapping or certain other tweaks windows - Simulate Windows rendering vanilla - Just subpixel hinting Infinality styles: classic - Infinality rendering circa 2010. No snapping nudge - CLASSIC with lightly stem snapping and tweaks push - CLASSIC with medium stem snapping and tweaks shove - Full stem snapping and tweaks without sharpening sharpened - Full stem snapping, tweaks, and Windows-style sharpening infinality - Settings used by Infinality
LibXft
Only legacy programs still use libXft. The default configuration is defined in /usr/share/X11/app-defaults/Xft. It can be overriden on a per-user basis in the ~/.Xresources or ~/.Xdefaults files:
Xft.antialias: 1 Xft.autohint: 0 Xft.dpi: 96 Xft.hinting: 1 Xft.hintstyle: hintfull Xft.lcdfilter: lcddefault Xft.rgba: rgb