Making PDF documents from (La)TeX¶
There are three general routes to PDF output: Adobe’s original « distillation » route (via PostScript output), direct conversion of a DVI file, and the use of a direct TeX-like PDF generator such as pdfTeX.
For simple documents (with no hyper-references), you can either
process the document in the normal way, produce PostScript output and distill it;
(on a Windows or Macintosh machine with appropriate tools installed) pass the output through a PDFwriter in place of a printer driver. This route is only appropriate for simple documents: PDF writers cannot create hyperlinks;
process the document with « vanilla » LaTeX and generate PDF direct from the DVI using
To translate all the LaTeX cross-referencing into Acrobat links, you need a LaTeX package to redefine the internal commands. There are two of these for LaTeX, both capable of conforming to the HyperTeX specification: Heiko Oberdiek’s hyperref, and Michael Mehlich’s hyper. (In practice, almost everyone uses hyperref; hyper hasn’t been updated since 2000.) Hyperref can often determine how it should generate hypertext from its environment, but there is a wide set of configuration options you can give via
\usepackage. The package can operate using pdfTeX primitives, the hyperTeX
\specials, or DVI driver-specific
\special commands. Both
dvips and Y&Y’s
DVIPSONE can translate the DVI with these
\special commands into PostScript acceptable to Distiller, and
\special commands of their own.
If you use Plain TeX, the Eplain macros can help you create PDF documents with hyper-references. It can operate using pdfTeX primitives, or
\special commands for the
dvipdfmx DVI drivers.
While there is no free implementation of all of Adobe Distiller’s functionality, any but the implausibly old versions of Ghostscript provide pretty reliable distillation (but beware of the problems with
`dvips output for distillation <FAQ-dvips-pdf>`__).
For viewing (and printing) the resulting files, Adobe’s Acrobat Reader is available for a fair range of platforms; for those for which Adobe’s reader is unavailable, remotely current versions of Ghostscript combined with
`gsview <http://www.ghostgum.com.au/>__ can display and print PDF files, as canxpdf`.
In some circumstances, a
`ghostscript <https://www.ghostscript.com/>__-based viewer application is actually preferable to Acrobat Reader. For example, on Windows Acrobat Reader locks thepdffile it’s displaying: this makes the traditional (and highly effective) (La)TeX development cycle of « Edit$rightarrow$Process$rightarrow$Preview » become rather clumsy —
gsview <http://www.ghostgum.com.au/>`__ doesn’t make the same mistake.