dvips: Including headers from TeX
5.2.1 Including headers from TeX
--------------------------------
In order to get a particular graphic file to work, a certain font or
header file might need to be sent first. The Dvips program provides
support for this with the 'header' '\special'. For instance, to ensure
that 'foo.ps' gets downloaded:
\special{header=foo.ps}
As another example, if you have some PostScript code that uses a
PostScript font not built into your printer, you must download it to the
printer. If the font isn't used elsewhere in the document, Dvips can't
know you've used it, so you must include it in the same way, as in:
\special{header=putr.pfa}
to include the font definition file for Adobe Utopia Roman.
The 'header' also special allows for specifying some additional code
that should be inserted into the PostScript document before and after
the file itself, as follows:
\special{header={foo.ps} pre={pre code} post={post code}}
This will insert 'pre code' just before 'foo.ps' and 'post code' just
after. It is required to use the (balanced) braces in _all_ of the
arguments, including the 'header', when using this extended syntax.
This allows, for instance, dynamic headers, where some of the content
depends on settings from the user in (La)TeX. Another application is
the inclusion of graphics inside the PostScript header, so that they can
be reused throughout the document, as with logs. That avoids including
the same graphic several times. This is implemented in the
'graphics/graphicx-psmin' package.
This extended syntax has one additional feature. When Dvips finds
the extended syntax, it will also look in the installed 'tex/' tree(s)
for the header file ('foo.ps' in our example), and not only in the
current directory and dvips tree as the original syntax does. This is
because common graphics may well come with packages which are installed
in the 'tex/' tree.