If the -l option is specified, the output will be a layout specification, which can be edited by layout(1), with each character in the font drawn out as a series of line segments in a panel. This option is intended for use in vfedit, below. To facilitate editing of font characters, dotted lines are added as guides, indicating the horizontal and vertical centres, as well as the horizontal baseline; left and right side-bearings are marked on the baseline with asterisks. When writing out a layout specification, the -u option specifies the number of units from the bottom or left to the centre of a square character cell. The default number of units is 32, resulting in a cell of 64 units square.
If the -b option is specified, the output will be in a binary format designed by the Spinal Cord Research Centre, and used by programs described in layout(1) and emuhpgl(1).
If the -v option is specified, the output will be in text format, compatible with the MASSCOMP supplied Hershey font files in the directory /usr/lib/font.
Input format is determined automatically by "peeking" at the first byte of the standard input. Fonts are always converted internally to binary format when read in. The size of this internal binary format, and consequently of binary input and output formats, is currently limited to 20K.
Vfedit allows you to interactively edit the argument file, which is either a binary or text format Hershey font file. The file is converted into a temporary layout file, layout is invoked to allow editing of font characters, and if the layout file is modified, it is converted back to the format of the original file, which it replaces. The original file is saved, with the suffix .bak added to its name.
During the conversion of the layout file to a font file format, certain optimisations are performed. Line segments that are part of the characters to be drawn are aligned to units of the character cell, and chained together wherever end points meet. To ensure proper alignment of line segments while editing, the grid spacing in layout should be set to 0.1 millimetres.