pkfix explained

pkfix
Author:Heiko Oberdiek
Latest Release Version:1.3
Latest Release Date:2005-02-25
Programming Language:Perl
Operating System:Cross-platform
License:LaTeX Project Public License

The text-producing systems LaTeX and TeX produce DVI files from files written by the user. Those files used to be (and, to a moderate extent, still are) post-processed by a tool called dvips, which converted those DVI files into PostScript files, which are understood by many printers.

Some older versions of dvips with embedded bitmapped fonts, which represented letters and symbols as pictures at a fixed resolution (for instance, at 300 dpi). When such files are printed on newer devices (some with resolution of 1200 dpi), the letters of the files that have bitmapped fonts display a remarkably low quality, with jagged lines on curves and diagonals. One solution to this problem is to substitute the bitmapped fonts with scalable fonts (known among PostScript users as Type 1 fonts).

To remedy this problem of low quality printing, one can use Heiko Oberdiek's utility called pkfix. The input of pkfix is a PostScript file generated by dvips (with versions at 5.58 or newer[1]) and its output is another PostScript file, this time, with the bitmapped fonts substituted by scalable fonts (if possible).

Technically speaking, pkfix is a Perl script which searches the PostScript file for comments on bitmapped PK fonts (introduced by relatively recent dvips versions), and replaces them with the corresponding Type 1 fonts.

Of course, a simpler solution to this problem would be to reprocess the LaTeX/TeX files with recent tools and fonts, but, in most cases, the person that has the given PostScript file isn't the author of the document and doesn't have access to the source files (or, worse, the source files may have been lost during the times).

Notes and References

  1. http://www.ctan.org/tex-archive/support/pkfix/ Documentation of pkfix on CTAN.