DVI (ファイルフォーマット)
DVI ファイルのフォーマットはコンパクトで機械的に簡単に解釈できるように設計されている。DVI ファイルの内容は単純なある仮想機械へのコマンドの列で構成されている。各コマンドは8ビットの命令と、命令毎に異なる数バイトの引数からなる。たとえば、命令0から127は set_char_i という引数無し(0バイト)の命令で、命令番号と同じ番号の文字を出力してその文字の幅だけ暗黙的なカーソルを右に移動するものとなっている。一方で、長い命令の例として、例えば命令 pre(コード247)は最低でも14バイトのパラメータと、最大255文字までのコメントを引数として持つ。
おおざっぱに言うと、DVI ファイルはプリアンブル、複数のページ、ポストアンブルで構成されている。仮想機械は6つの32ビット符号付き整数 h、v、w、x、y、z を状態変数として持っていて、h と v が現在のカーソルのページ左上の基準点からの相対位置(1/65,536 インチ単位)を保持し、w と x は左右方向のスペースを管理する変数として、y と z は上下方向のスペースを管理する変数として使われる。