Replacing Type 3 fonts in PostScript

One often comes across a PostScript file generated by dvips which contains embedded PK fonts; if you try to generate PDF from such a file, the quality will be poor.

Of course, the proper solution is to regenerate the PostScript file, but if neither the sources nor the DVI file are available, one must needs resort to some sort of patching to replace the bitmap fonts in the file by outline fonts.

The program pkfix (by Heiko Oberdiek) will do this patching, for files created by “not too old versions” of dvips: it finds the fonts to be replaced by examining the PostScript comments dvips has put in the file. For each font, pkfix puts appropriate TeX commands in a file, which it then processes and runs through dvips (with switch -Ppdf) to acquire an appropriate copy of the font; these copies are then patched back into the original file.

If your source file is older than pkfix can deal with, there’s still a modicum of hope: pkfix-helper examines the bitmap fonts in a document, compares them with the metric (.tfm) fonts on your system and comes to a view of which font might be which. The program reports on “poor” matches, and there are options for confirming, or replacing, its guesses. The technique (which sounds implausible) is successful enough to be worth a try.

A further option is Frank Siegert’s (shareware) PStill, which is capable of processing the PostScript it is distilling, and one option is to replace bitmap fonts in the file with Type 1 versions.

pkfix
support/pkfix (or browse the directory); catalogue entry
pkfix-helper
support/pkfix-helper (or browse the directory); catalogue entry

This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=pkfix