From Fedora Project Wiki
Fontconfig has a modular design, allowing each font to contribute its own font substitution rules and workarounds, without requiring the maintenance of a large centralised static ruleset. However that also means a single package with broken rules can destabilise font priorities and make them less than awesome.
Our fontconfig rules have many origins[1] and mistakes are common[2]. To help identify and fix them:
- try to find a packageset that works and packageset that does not
- compare the output of:
fc-match -s :family=<name>:lang=<loc>
in both cases, with <name> the font family you requested[3] and <loc> the target locale[4]. - if necessary, identify more precisely the problem font,
- examine the fontconfig rules shipped with the problem package,
# yum install fontpackages-devel meld $ meld foo.conf /usr/share/fontconfig/templates/bar.conf
- report your findings.
Notes:
- ↑
- default rules provided by fontconfig upstream,
- rules written by Fedora packagers using our own templates: install fontpackages-devel and look in /usr/share/fontconfig/templates/,
- rules written by Fedora packagers without regard for our templates,
- rules written by font projects.
- ↑ While trying to:
- workaround KDE/QT fontconfig processing bugs,
- make sure one's font is the default for some languages,
- make sure one's font rendering preferences are default for one font,
- ↑ For example sans, serif…
- ↑ For example ja-jp, zh, etc.