Pkfix
Encyclopedia
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) 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).
LaTeX
LaTeX is a document markup language and document preparation system for the TeX typesetting program. Within the typesetting system, its name is styled as . The term LaTeX refers only to the language in which documents are written, not to the editor used to write those documents. In order to...
and TeX
TeX
TeX is a typesetting system designed and mostly written by Donald Knuth and released in 1978. Within the typesetting system, its name is formatted as ....
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
Dvips
dvips is a software program that converts the DVI format output of TeX typography into a printable or otherwise presentable form. dvips was written by Tomas Rokicki to produce printable PostScript files from DVI input, and is now commonly used for general DVI conversion.The TeX typesetting system...
, which converted those DVI files into PostScript
PostScript
PostScript is a dynamically typed concatenative programming language created by John Warnock and Charles Geschke in 1982. It is best known for its use as a page description language in the electronic and desktop publishing areas. Adobe PostScript 3 is also the worldwide printing and imaging...
files, which are understood by many printers.
Some older versions of dvips
Dvips
dvips is a software program that converts the DVI format output of TeX typography into a printable or otherwise presentable form. dvips was written by Tomas Rokicki to produce printable PostScript files from DVI input, and is now commonly used for general DVI conversion.The TeX typesetting system...
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) 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
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
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).