DVIPS and Incorrect Ligatures

If you use packages which switch font familys in LaTeX, such as the times roman packages or the mathptm and mathptmx packages you may notice that ligatures such as the common "fi" and "fl" are displayed incorrectly in the postscript renditions of the document created with DVIPS. Most often this is seen as the "fi" ligature coming out as the british "pounds sterling" symbol.

This phenomenon is referred to as "shifting" of the ligatures and is due to the manner in which the font family designed by Donald Knuth differ in encoding scheme from those produced by the Adobe corporation. When the font family is switched from a Knuth font such as Computer Modern (cmr), to an Adobe font such as Times Roman (ptm) the encoding difference is incorrect accounted for in DVIPS version prior to 5.90. This results in the strange behavior.

To override this behavior DVIPS must explicitly be passed the -G0 to preserve the correct encoding scheme for Adobe fonts. Due to the way that DVIPS processes arguements and overrides settins this flag must come AFTER the config file directive (-Ppdf or the like).

The proper command would then be:

dvips -Ppdf -G0 -o output_file.ps input_file.dvi

This construct should fix the problem of ligature shifting on most setups.

Note: If ligature shifts are seen in going from Adobe TO Knuth fonts then use the -G1 encoding flag.


Andrew J. Norman
Last modified: Wed Sep 3 14:26:54 EDT 2003