Pages

Preliminaries

Besides making font administration easier, HP's font server also has the capability to provide clients with scalable typefaces in three formats: PostScript Type 1, TrueType, and Intellifont.

Scalable typefaces are only supported via the font server. If you want to use scalable fonts, you have to run a font server. So, first of all, make sure you're running a font server somewhere in your network. Then, verify that you're using it: Type xset -q and check if your font path contains an entry like tcp/hostname:7000. If not, add it (using the correct host name and port) to your font path; check the xset(1) man page for details.

Installation

  1. It's sensible to store additional fonts separate from the standard fonts, e.g., under /usr/local/lib/X11/fonts. This will be our root directory. In this directory, create a directory hierarchy similiar to the following:

    /usr/local/lib/X11/fonts/
                |
                +---type1.st/
                |           |
                |           +---licenses/
                |           |
                |           +---products/
                |           |
                |           +---typefaces/
                |
                +----ttf.st/
                       |
                       +---licenses/
                       |
                       +---products/
                       |
                       +---typefaces/
        

    The top-level directory should preferably be named type1.st or ttf.st, in any case, according to the stlicense(1) man page, it must have the suffix .st. Create the directories licenses, products, and typefaces in this directory.

  2. Add the top-level directory (that would be /usr/local/lib/X11/fonts/type1.st, for example) in the font server configuration file (/etc/X11/fs/config on HP-UX 10.20; you can also specify a different file).

  3. Copy the font files (.pfa, .pfb, or .ttf) into the typefaces directory. The extensions of the font files must be those listed above, and they must be in lowercase.

  4. Use stmkdirs(1) to create a font.dirs file. For example, if you have the directory structure outlined above, your current working directory is /usr/local/lib/X11/fonts, and you want to install the fonts in ttf.st/typefaces, type stmkdirs ttf.st/typefaces.

  5. Copy the newly created font.dirs file into the products directory (under a different name), e.g., cp typefaces/fonts.dir products/local (if you have fonts to which different licenses apply, it's useful to put them into different files in the product directory).

  6. Change out of the top-level directory and type:

    stlicense -v -fp ttf.st -pr local +STSYSTEM

    (+STSYSTEM makes the fonts available to all machines on the network; check your font licenses if you're allowed to do this, and stlicense(1) on how to specify other licensing schemes.)

  7. Send the font server a USR1 signal, e.g.,

          # ps -e | grep xfs
          23461 ?         0:44 xfs
          # kill -s usr1 23461
        
  8. Check with fslsfonts if the fonts are there, e.g.,

    $ fslsfonts -server hostname:7000 -fn '*-monotype*'
    -mono-monotypecom-medium-r-normal--0-0-0-0-m-0-hp-roman8
    -mono-monotypecom-medium-r-normal--0-0-0-0-m-0-iso8859-1
    -mono-monotypecom-medium-r-normal--0-0-0-0-m-0-platform.1-specific.0
    -mono-monotypecom-medium-r-normal--0-0-0-0-m-0-platform.3-specific.1
        

Relevant man pages: xfs(1), stmkdirs(1), stlicense(1M).

Some notes on HP-UX 9

The procedures outlined above basically work for HP-UX 9, too. However, the fontserver is called fs and could only render scalable typefaces in Type 1 and Intellifont format, not TrueType. Since X in HP-UX 9 is based on X11R5, the fslsfonts utility isn't included; you'd need to build it yourself. (Thanks to Christopher Blencowe for information on HP-UX 9.)

What else?

The above is only a rough outline. HP's font server also supports on-the-fly reencoding of fonts, which should also be described here. I'll add more information when I have the time.