The format of the \special-string

As the TEXdriver ShowDVI and DVIprint ask SpecialHost for the picture to be included, they must know after what they should be asking. This is present in the TEXtext, the command is the
special-string. All of


special{
arbitrary text
}

of the
special-command that is within the accolades, is ignored by the TEXprogram and passed to the driver unchanged. If ShowDVI or DVIprint encounters such a string now, then it is checked, whether a SpecialHost program is running in the background. Is this not the case, then the
special-command is simply ignored. If the SpecialHost program is present, then it receives the complete string per message.

Thus it is the SpecialHost program, which evaluates the special-string and determines the meaning of each and every word of the string. As this special-string is not standardized in any way, the format can change from driver to driver.

So the suggested format only matters for this collection of drivers and has not yet been finalized here either. In newer versions, new functions will probably be added. However, downward compatibility is stressed, so that you can switch to newer versions without difficulty.

The present format of the
special-string:


special{com1 com2 com3}

The particular commands within the braces are separated from eachother by one or more spaces.

A command itself consists of a keyword and a value, so that a more precise study of the
special-string shows the following format:


special{key1=val1 key2=val2 key3=val3}

Between the keyword (key) and the value (val) an equal sign must always be present.

As keywords, the following exist up to now:     ifffile     ifffile defines the filename of an IFF-file,     hoffset indicates a horizontal offset,     voffset indicates a vertical offset,     hsize determines the horizontal size of the picture,     vsize determines the vertical size of the picture,

At ifffile an IFF-file is given as the value of the filename. Plus, you should mind that the current directory is that one, from which the SpecialHostprogram has been started. Because of this, the filename of an IFF-file should always contain the entire path. In the present version it is unfortunately not yet possible, to change the current directory from within the SpecialHost program.

In case of the other four keywords, an indication of the dimension is expected as the value. This consists of a real number plus a calculation of the unit. The following units are available:     mm     pt point (is used by TEX)     pc pica 1pc = 12pt     in inch 1in = 72.27pt     bp big point 72bp = 1in     cm centimeter     mm millimeter     dd didôt point 1157dd = 1238pt     cc cicero 1cc = 12dd

Here a few examples for a
special-string:


special{ifffile=dh0:pict/graphic1}

Here the IFF-file ``graphic1'' from the directory ``dh0:pict'' is included at the current text position.
special{ifffile=graphic2 hoffset=1.5in}

This time, the picture is taken from the current directory of the SpecialHost program and moved 1,5 inch to the right.
special{ifffile=graphic3 voffset=-1cm hsize=2in vsize=1in}

The picture ``graphic3'' is moved one centimeter upward in this example and enlarged or reduced to the size of 2 by 1 inch.

When using the keywords hsize and vsize by the way, you do not have to take the right selection of the ``Base DPI'' into consideration anymore, as then the picture in any case will be brought on the size necessary. The original size of the picture will then be ignored.