Creating custom formats for printing

Since WAVE 's printing facilities are implemented through its menu file, you have complete control over the format of the output, simply by editing the menu file as in the previous chapter. Both pschart (used to produce ``chart recorder'' output) and psfd (used to produce ``full disclosure'' output) are highly flexible and can be configured to produce almost any reasonable format by inserting the appropriate options in the commands given in WAVE 's menu file. You may change the predefined commands or add new ones as you wish.

In the menu file, the special tag ``<Print>'' identifies the command that runs when you select Print from the File menu. You can change this command as you wish, but don't change the ``<Print>'' tag itself.

A few of the most commonly-used options (usable with either pschart or psfd) are listed below. For further details on these and other options, see pschart(1) and psfd(1), in the WFDB Applications Guide. (You can also get a brief summary of the many available options by typing pschart -h and psfd -h.)

-d n
Optimize for use with a printer with a resolution of n dots per inch (default: 300 dpi, the typical resolution for low-end laser printers). This option has no effect on the output scale, and need not be correct for your printer; it does, however, affect the amount of detail rendered and the thickness of the lines that are drawn.

-E
Generate EPSF format, suitable for inclusion in another PostScript file. (I used this option when preparing the pschart and psfd plots in this guide). The default format is PostScript, but not EPSF, for two reasons. First, a legal EPSF plot must fit entirely on one page, but pschart and psfd are frequently used to produce multi-page plots. Second, an EPSF plot may be rescaled if it is included in another document, and the scales printed at the bottom of the plot will be incorrect if this happens (as is the case in the plots reproduced in this guide).

-g
Print a grid (using pschart) or a set of time axes (using psfd).

-l
Label the signals in the plot margins.

-L
Print in ``landscape'' orientation (default: portrait orientation). The charts made by selecting Print from the File menu are printed using this option.

-Mn
The numeric argument n attached to this option (there should be no whitespace between -M and n) controls where annotations appear relative to the signals, and the appearance of the marker bars. Unless you display annotations as a signal in WAVE , you may wish to use the option -M$DISPMODE in the menu file - if you do so, then your printed output will show annotations and marker bars the same way that WAVE does.

-P pagesize
Use this option to print on non-standard paper, or to make a plot that fits in a smaller space. The default pagesize is set when psfd and pschart are compiled. For the precompiled binaries distributed with WAVE , the default is letter (US letter size paper, 8.5 x 11 inches, or 216 x 279 mm). In most of the rest of the world, the standard is A4 (210 x 297 mm). You can specify pagesize as ``letter'', ``A4'', or a number of other popular sizes, or as ``widthxheight'', where width and height are the dimensions in millimeters. I used this option to prepare figure 1.3 in a relatively compact form; if you print a figure like it with the default page size, there will be considerable empty space between the plot itself and the page headers and footers.

-t n
This option sets the time scale, in mm/sec. Defaults are 12.5 mm/sec for pschart, and 2.5 mm/sec for psfd. For pschart, you might wish to use the option -t $TSCALE in the menu file, so that your charts will be printed at the same time scales you choose for WAVE 's signal window.

-v n
This option sets the amplitude scale, in mm/mV. Defaults are 5 mm/mV for pschart, and 1 mm/mV for psfd. For pschart, you might wish to use the option -v $VSCALE in the menu file, so that your charts will be printed at the same amplitude scales you choose for WAVE 's signal window.

This list of options only hints at what is possible using pschart and psfd. There are many other options described in the man pages, and it is also possible to redefine the PostScript primitives used by these programs (for example, to change the appearance of the grid, or to plot in color on a color-capable printer) by modifying their PostScript prolog files. It is also possible to replace these programs entirely (for example, with your own applications for printing on a non-PostScript printer) if desired, simply by editing WAVE 's menu file.

George B. Moody (george@mit.edu)
2019-03-08