DVI, short for DeVice Independent, is the output file format produced by Donald Knuth’s TeX typesetting system. When TeX finishes laying out a document, it does not generate printer-specific commands or a particular image format. Instead it writes a DVI file: a compact, binary description of each page that records exactly which characters appear, in which fonts, at which positions, along with the rules and boxes that make up the layout. The format is deliberately abstract about output hardware, which is what the name promises and what made TeX portable across the wildly different printers and typesetters of the early 1980s.
The format is documented as part of Knuth’s own toolset rather than as a separate vendor specification. The CTAN catalog describes dvitype as “one of Knuth’s original tools,” a program that “provides a human-readable listing of the content of a DVI file,” and notes that “the web source of DVItype also serves as a reference for the format of DVI files themselves.” In other words, the authoritative definition of DVI lives inside the literate-programming source of the dvitype utility, written in Knuth’s WEB system, which both documents the binary commands and demonstrates how to interpret them.
A DVI file is a stream of one-byte opcodes followed by their operands. Commands set characters from the current font, move the reference point horizontally and vertically, push and pop position state onto a stack so that boxes can nest, select fonts, and mark page boundaries. Crucially, the file does not contain the fonts themselves; it refers to them by name and checksum, leaving the actual glyph shapes to be supplied at output time. Positions are given in a fine internal unit so that pages can be reproduced at the full precision of whatever device ultimately renders them.
Because DVI says nothing about how to drive a specific printer, a separate program called a DVI driver is needed to turn the file into something a real device understands. Drivers existed to produce output for dot-matrix and laser printers, for high-resolution phototypesetters, and, importantly, for PostScript through programs such as dvips. This two-stage design, a device-independent intermediate file plus a family of device-specific drivers, cleanly separates the hard problem of typesetting from the mechanical problem of marking a particular page, and it let a single TeX document be printed faithfully on any machine for which a driver existed.
DVI predates and parallels Adobe’s PostScript as an approach to device independence, but the two operate at different levels: DVI is a terse, fixed instruction stream specialized for typeset text, while PostScript is a general programming language. In practice they were often used together, with TeX producing DVI and a driver translating it into PostScript for output. DVI remained the native output of TeX for decades, and although modern engines such as pdfTeX often emit PDF directly, the DVI format and its ecosystem of drivers remain a defining piece of the TeX world’s history.