Contents
The installation of additional fonts in openSUSE is very easy. Simply
copy the fonts to any directory located in the X11 font path (see
Section 12.1, “X11 Core Fonts”). To the enable use of the fonts,
the installation directory should be a subdirectory of the directories
configured in /etc/fonts/fonts.conf (see
Section 12.2, “Xft”) or included into this file with
/etc/fonts/suse-font-dirs.conf.
The following is an excerpt from
/etc/fonts/fonts.conf. This file is the standard
configuration file that should be appropriate for most configurations. It
also defines the included directory
/etc/fonts/conf.d. In this directory, all files or
symbolic links starting with a two digit number are loaded by fontconfig.
For a more detailed explanation of this functionality, have a look at
/etc/fonts/conf.d/README.
<!-- Font directory list --> <dir>/usr/share/fonts</dir> <dir>/usr/X11R6/lib/X11/fonts</dir> <dir>/opt/kde3/share/fonts</dir> <dir>/usr/local/share/fonts</dir> <dir>~/.fonts</dir>
/etc/fonts/suse-font-dirs.conf is automatically
generated to pull in fonts that ship with (mostly third party)
applications like OpenOffice.org, Java or Adobe Acrobat Reader. Some
typical entries of /etc/fonts/suse-font-dirs.conf
would look like the following:
<dir>/usr/lib64/ooo-2.0/share/fonts</dir> <dir>/usr/lib/jvm/java-1_4_2-sun-1.4.2.11/jre/lib/fonts</dir> <dir>/usr/lib64/jvm/java-1.5.0-sun-1.5.0_07/jre/lib/fonts</dir> <dir>/usr/X11R6/lib/Acrobat7/Resource/Font</dir> <dir>/usr/X11R6/lib/Acrobat7/Resource/Font/PFM</dir>
To install additional fonts systemwide, manually copy the font files to a
suitable directory (as root),
such as /usr/share/fonts/truetype. Alternatively, the
task can be performed with the KDE font installer in the KDE Control
Center. The result is the same.
Instead of copying the actual fonts, you can also create symbolic links.
For example, you may want to do this if you have licensed fonts on a
mounted Windows partition and want to use them. Subsequently, run
SuSEconfig --module fonts .
SuSEconfig --module fonts executes
the script /usr/sbin/fonts-config, which handles the
font configuration. For more information on this script, refer to its
manual page (man fonts-config ).
The procedure is the same for bitmap fonts, TrueType and OpenType fonts,
and Type1 (PostScript) fonts. All these font types can be installed into
any directory known to fonts-config.
X.Org contains two completely different font systems: the old and the newly designed system. The following sections briefly describe these two systems.
Today, the X11 core font system supports not only bitmap fonts but also scalable fonts, like Type1 fonts, TrueType, and OpenType fonts. Scalable fonts are only supported without antialiasing and subpixel rendering and the loading of large scalable fonts with glyphs for many languages may take a long time. Unicode fonts are also supported, but their use may be slow and require more memory.
The X11 core font system has a few inherent weaknesses. It is outdated and can no longer be extended in any meaningful way. Although it must be retained for reasons of backward compatibility, the more modern Xft and fontconfig system should be used if at all possible.
For its operation, the X server needs to know which fonts are available
and where in the system it can find them. This is handled by a
FontPath variable, which contains the path to all
valid system font directories. In each of these directories, a file named
fonts.dir lists the available fonts in this
directory. The FontPath is generated by the X server
at start-up. It searches for a valid fonts.dir file
in each of the FontPath entries in the configuration
file /etc/X11/xorg.conf. These entries are found in
the Files section. Display the actual
FontPath with
xset q. This path may also be
changed at runtime with xset. To add an additional
path, use xset +fp <path>.
To remove an unwanted path, use xset -fp
<path>.
If the X server is already active, newly installed fonts in mounted
directories can be made available with the command
xset fp rehash. This command is
executed by SuSEconfig --module
fonts. Because the command xset needs access
to the running X server, this only works if
SuSEconfig --module fonts is
started from a shell that has access to the running X server. The easiest
way to achieve this is to aquire
root permissions by
entering su and the root password.
su transfers the access permissions of the user who
started the X server to the root shell. To check if the fonts were
installed correctly and are available by way of the X11 core font system,
use the command xlsfonts to list all available fonts.
By default, openSUSE uses UTF-8 locales. Therefore, Unicode fonts
should be preferred (font names ending with iso10646-1
in xlsfonts output). All available Unicode fonts can
be listed with xlsfonts | grep
iso10646-1. Nearly all Unicode fonts available in openSUSE
contain at least the glyphs needed for European languages (formerly
encoded as iso-8859-*).