Pkfix

Last updated

pkfix
Original author(s) Heiko Oberdiek
Stable release
1.3 / 2005-02-25
Written in Perl
Operating system Cross-platform
License LaTeX Project Public License
Website www.ctan.org/tex-archive/support/pkfix/

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).

Related Research Articles

ClearType is Microsoft's implementation of

LaTeX Document preparation system

LaTeX is a software system for document preparation. When writing, the writer uses plain text as opposed to the formatted text found in "What You See Is What You Get" word processors like Microsoft Word, LibreOffice Writer and Apple Pages. The writer uses markup tagging conventions to define the general structure of a document, to stylise text throughout a document, and to add citations and cross-references. A TeX distribution such as TeX Live or MiKTeX is used to produce an output file suitable for printing or digital distribution.

TeX, stylized within the system as TeX, is a typesetting system which was designed and mostly written by Donald Knuth and released in 1978. TeX is a popular means of typesetting complex mathematical formulae; it has been noted as one of the most sophisticated digital typographical systems.

TrueType is an outline font standard developed by Apple in the late 1980s as a competitor to Adobe's Type 1 fonts used in PostScript. It has become the most common format for fonts on the classic Mac OS, macOS, and Microsoft Windows operating systems.

In computing, WYSIWYG, an acronym for What You See Is What You Get, is a system in which editing software allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed document, web page, or slide presentation.

Metafont is a description language used to define raster fonts. It is also the name of the interpreter that executes Metafont code, generating the bitmap fonts that can be embedded into e.g. PostScript. Metafont was devised by Donald Knuth as a companion to his TeX typesetting system.

LaserWriter Laser printer by Apple

The LaserWriter is a laser printer with built-in PostScript interpreter sold by Apple Computer, Inc. from 1985 to 1988. It was one of the first laser printers available to the mass market. In combination with WYSIWYG publishing software like PageMaker, that operated on top of the graphical user interface of Macintosh computers, the LaserWriter was a key component at the beginning of the desktop publishing revolution.

Display PostScript is a 2D graphics engine system for computers which uses the PostScript (PS) imaging model and language to generate on-screen graphics. To the basic PS system, DPS adds a number of features intended to ease working with bitmapped displays and improve performance of some common tasks.

OpenType is a format for scalable computer fonts. It was built on its predecessor TrueType, retaining TrueType's basic structure and adding many intricate data structures for prescribing typographic behavior. OpenType is a registered trademark of Microsoft Corporation.

Device independent file format

The device independent file format (DVI) is the output file format of the TeX typesetting program, designed by David R. Fuchs and implemented by Donald E. Knuth in 1982. Unlike the TeX markup files used to generate them, DVI files are not intended to be human-readable; they consist of binary data describing the visual layout of a document in a manner not reliant on any specific image format, display hardware or printer. DVI files are typically used as input to a second program which translates DVI files to graphical data. For example, most TeX software packages include a program for previewing DVI files on a user's computer display; this program is a driver. Drivers are also used to convert from DVI to popular page description languages and for printing.

Arial A sans-serif, neo-grotesque typeface serving as a free alternative to Helvetica

Arial, sometimes marketed or displayed in software as Arial MT, is a sans-serif typeface and set of computer fonts in the neo-grotesque style. Fonts from the Arial family are packaged with all versions of Microsoft Windows from Windows 3.1 onwards, some other Microsoft software applications, Apple's macOS and many PostScript 3 computer printers. The typeface was designed in 1982, by Robin Nicholas and Patricia Saunders, for Monotype Typography. It was created to be metrically identical to the popular typeface Helvetica, with all character widths identical, so that a document designed in Helvetica could be displayed and printed correctly without having to pay for a Helvetica license.

Dots per inch

Dots per inch is a measure of spatial printing, video or image scanner dot density, in particular the number of individual dots that can be placed in a line within the span of 1 inch (2.54 cm). Similarly, the more newly introduced dots per centimeter refers to the number of individual dots that can be placed within a line of 1 centimeter (≈ 0.393 in).

dvips is a computer program that converts the Device Independent file format (DVI) 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.

Computer Modern Family of typefaces

Computer Modern is the original family of typefaces used by the typesetting program TeX. It was created by Donald Knuth with his Metafont program, and was most recently updated in 1992. Computer Modern, or variants of it, remains very widely used in scientific publishing, especially in disciplines that make frequent use of mathematical notation.

A computer font is implemented as a digital data file containing a set of graphically related glyphs, characters, or symbols such as dingbats. Although the term font first referred to a set of movable metal type pieces in one style and size, since the 1990s it is generally used to refer to a set of digital shapes in a single style, scalable to different sizes. A font family or typeface refers to the collection of related fonts across styles and sizes.

Resolution independence is where elements on a computer screen are rendered at sizes independent from the pixel grid, resulting in a graphical user interface that is displayed at a consistent size, regardless of the resolution of the screen.

Apple's Macintosh computer supports a wide variety of fonts. This support was one of the features that initially distinguished it from other systems.

dvipng is a cross-platform program for converting the DVI output of the TeX typesetting system into PNG image format. Dvipng was written by Jan-Åke Larsson.

The computer program pdfTeX is an extension of Knuth's typesetting program TeX, and was originally written and developed into a publicly usable product by Hàn Thế Thành as a part of the work for his PhD thesis at the Faculty of Informatics, Masaryk University, Brno, Czech Republic. The idea of making this extension to TeX was conceived during the early 1990s, when Jiří Zlatuška and Phil Taylor discussed some developmental ideas with Donald Knuth at Stanford University. Knuth later met Hàn Thế Thành in Brno during his visit to the Faculty of Informatics to receive an honorary doctorate from Masaryk University.

TexLab

TexLab is a TeX editor based on parallel programming. Contrary to other TeX editors which use a text file as input, TexLab was designed to process small binary document modules. TexLab typesetting engine is implemented by a thread pool to execute MiKTeX commands, such as: LaTeX, XeTeX or pdfTeX. MiKTeX is the version of LaTeX for Microsoft Windows; it consists of a set of tools to process text. Christian Schenk is the creator of MiKTeX, he studied Computer Science at TU Berlin. When Christian owned his first PC, he began working on a fun project; this project eventually became MiKTeX. TexLab interacts with Windows API's and Win32 through a thin level of abstraction provided by the C++ classes of Wintempla. TexLab interacts with MiKTeX commands through Anonymous pipes which is an interprocess communication (IPC) method.

References