Go to the previous, next chapter.

X11 Font Server

X11 Release 5

With X11 Release 5, the X Consortium has created a network-based standard font protocol. As a user of the X Window System, you have an X server on your desktop, which does the interface between the hardware (screen, mouse, keyboard), and the X network protocol. This X server needs fonts. Before X11R5, the only way it could get to those fonts was to make font directories readable for the X server on that host, either by NFS-mounting or by copying.

With the X Font Service protocol, you just tell your X server that it must use the services of a font server, which is a daemon process sitting on a host on your network. The font server is a program which talks a standardized protocol on the network, and which is capable of reading several font formats.

The font server sources are modular, such that it is easy to add a renderer for an additional font format to the existing code. This is obviously also the intention: the X Consortium provides the core technology, and supposes that all systems vendors will add font renderers for their proprietary formats to the code, and then ship that to their customers.

If you have a multi-vendor environment, then you are supposed to run a font server on every host that carries the font files. Then all of the X servers on your network can put all the fonts they need in their font path. Automatically, IBM fonts will be requested from the font server on an IBM host, DEC fonts from a DEC host, etc.

Other benefits of using font server technology include the ability of the font server to implement caching, provide for fault-tolerant setup, etc.

A final example of the good use of the font server is the combination of a font server with a Type 1 font renderer. As mentioned above, IBM donated a Type 1 font renderer which can easily be built into the X font server. As the Type 1 font format, and the ATM format are the same, it is perfectly possible to use commercial ATM fonts with the X Window System. See also /contrib/fonts/lib/font/Type1/ in the X11 distribution.

X11 Release 6

The X11R6 font server is very similar to the X11R5 server described above. Under X11R6, the font server has been renamed to xfs and the Type 1 rendering engine is now incorporated into the base distribution---it is no longer a contributed package.

Excerpted from The comp.fonts FAQ, Copyright © 1992-96 by Norman Walsh