grodvi is a driver for
groff that produces dvi format. Normally it should be run by
groff -Tdvi. This will run
troff -Tdvi; it will also input the macros in
/usr/share/tmac/dvi.tmac.The dvi file generated by grodvi can be printed by any correctly-written dvi driver. The troff drawing primitives are implemented using the tpic version 2 specials. If the driver does not support these, the \D commands will not produce any output.
There is an additional drawing command available:
\D'R dh dv'
Draw a rule (solid black rectangle), with one corner at the current position, and the diagonally opposite corner at the current position +(dh,dv). Afterwards the current position will be at the opposite corner. This produces a rule in the dvi file and so can be printed even with a driver that does not support the tpic specials unlike the other \D commands.
The groff command \X'anything' is translated into the same command in the dvi file as would be produced by \special{anything} in ; anything may not contain a newline.
For inclusion of EPS image files, -Tdvi loads pspic.tmac automatically, providing the PSPIC macro. Please check groff_tmac(5) for a detailed description.
Font files for grodvi can be created from tfm files using tfmtodit(1). The font description file should contain the following additional commands: internalname name The name of the tfm file (without the .tfm extension) is name.
checksum n
The checksum in the tfm file is n.
designsize n
The designsize in the tfm file is n.
These are automatically generated by tfmtodit.
The default color for \m and \M is black. Currently, the drawing color for \D commands is always black, and fill color values are translated to gray.
In troff the \N escape sequence can be used to access characters by their position in the corresponding tfm file; all characters in the tfm file can be accessed this way.
By design, the DVI format doesn't care about physical dimensions of the output medium. Instead, grodvi emits the equivalent to 's \special{papersize=width,length} on the first page; dvips (and possibly other DVI drivers) then sets the page size accordingly. If either the page width or length is not positive, no papersize special is output.