A Font Substitute file (.SUB) consists of a number of sections, each section specifying the criteria for matching requested fonts to substitute fonts.

Each section starts with the keyword RTFONTSUBST. Any text following RTFONTSUBST on this line is treated as a comment.

This line is followed by a number of lines each consisting of a keyword and a string. The string must be enclosed in quotes if it contains any spaces. You may use wildcard font names in this string, e.g. *bold would select all fonts with names ending in 'bold' and *new* in the font name would select all fonts with names such as 'Times New Roman', 'Courier New' etc.. See Wildcards in font substitution.

Click to expand/collapse this hidden textKeywords

MATCH 'fontname' where fontname may be wild-carded with * or ? for matching against the name of a downloaded font.

SELECT 'sel' where sel is a selection sequence defining the characteristics to be matched. The syntax is as for the PCL font selection but with no escape character e.g. (10U (s1p0s0B. The 10U in this example is the symbol set; for a description of the other parameters see PCL Font Selection Sequences.

NAME 'fontname' specified the substitute font name to be used in a PDF (or in PostScript output).

SUBST 'sel' specifies the selection sequence to be used for PCL output.

TTNAME 'fontname' specifies the TrueType font to be used on the screen.

CONV 'symbolset' specifies the symbol set to be used for character code conversion when extracting text. This could be null (no conversion), HP3 for a Windows driver or perhaps EBCDIC or -29 in some cases.

HEAD 'MD5string' specifies the MD5 signature of the font

This is an example of a typical section in a font substitute file (labelled with the comment Arial):


MATCH: 'Arial'

SELECT (s1p0s0B

SUBST (s16602T

NAME: 'Helvetica'

TTNAME: 'Arial'