1FONTS-CONF(5) FONTS-CONF(5)
2
3
4
6 fonts.conf - Font configuration files
7
9 /etc/fonts/fonts.conf
10 /etc/fonts/fonts.dtd
11 /etc/fonts/conf.d
12 $XDG_CONFIG_HOME/fontconfig/conf.d
13 $XDG_CONFIG_HOME/fontconfig/fonts.conf
14 ~/.fonts.conf.d
15 ~/.fonts.conf
16
17
19 Fontconfig is a library designed to provide system-wide font configura‐
20 tion, customization and application access.
21
23 Fontconfig contains two essential modules, the configuration module
24 which builds an internal configuration from XML files and the matching
25 module which accepts font patterns and returns the nearest matching
26 font.
27
28 FONT CONFIGURATION
29 The configuration module consists of the FcConfig datatype, libexpat
30 and FcConfigParse which walks over an XML tree and amends a configura‐
31 tion with data found within. From an external perspective, configura‐
32 tion of the library consists of generating a valid XML tree and feeding
33 that to FcConfigParse. The only other mechanism provided to applica‐
34 tions for changing the running configuration is to add fonts and direc‐
35 tories to the list of application-provided font files.
36
37 The intent is to make font configurations relatively static, and shared
38 by as many applications as possible. It is hoped that this will lead to
39 more stable font selection when passing names from one application to
40 another. XML was chosen as a configuration file format because it pro‐
41 vides a format which is easy for external agents to edit while retain‐
42 ing the correct structure and syntax.
43
44 Font configuration is separate from font matching; applications needing
45 to do their own matching can access the available fonts from the
46 library and perform private matching. The intent is to permit applica‐
47 tions to pick and choose appropriate functionality from the library
48 instead of forcing them to choose between this library and a private
49 configuration mechanism. The hope is that this will ensure that config‐
50 uration of fonts for all applications can be centralized in one place.
51 Centralizing font configuration will simplify and regularize font
52 installation and customization.
53
54 FONT PROPERTIES
55 While font patterns may contain essentially any properties, there are
56 some well known properties with associated types. Fontconfig uses some
57 of these properties for font matching and font completion. Others are
58 provided as a convenience for the applications' rendering mechanism.
59
60 Property Type Description
61 --------------------------------------------------------------
62 family String Font family names
63 familylang String Languages corresponding to each family
64 style String Font style. Overrides weight and slant
65 stylelang String Languages corresponding to each style
66 fullname String Font full names (often includes style)
67 fullnamelang String Languages corresponding to each fullname
68 slant Int Italic, oblique or roman
69 weight Int Light, medium, demibold, bold or black
70 s