Paper sizes can be a pain: they're a forgotten backwater, because there's no DVI command to specify the paper size of the document. One usually finds American "letter" paper size being used, by default, in macro packages (such as plain and LaTeX); but distributions provide configuration files for DVI drivers (and since most distributions originate in Europe, the drivers usually default to ISO "A4" paper size).
This is (of course) pretty unsatisfactory. Users may change the paper size their document is designed for, pretty easily (and once off), but they have to ensure that every run of xdvi, dvips, or whatever, is given the correct override for using anything non-'standard'.
Of course, the default paper size for DVI drivers may be changed by a distribution management command, but this still doesn't provide for people using the "wrong" sort of paper for some reason.
An interestingly different issue arises for users of PDFTeX - the
PDF format does have the means of expressing paper size,
but much of the core software predates PDFTeX, so not even
PDFLaTeX sets the correct values into \
pdfpagewidth
and
\
pdfpageheight
.
The DVI drivers dvips and dvipdfm define
\
special
commands for the document to specify its own paper size;
so in those cases, as in the case of PDFTeX and VTeX, the paper
size can be programmed by the document. Users who wish to, may of
course consult the manuals of the various programs to write the
necessary code.
The geometry package (whose main business is defining
typeset page areas), also takes notice of the paper size the document
is going to print to, and can issue the commands necessary to ensure
the correct size is used. If geometry is used when a
document is being processed by either PDFLaTeX or VTeX, it will
set the necessary dimensions as a matter of course. If the document
is being processed by LaTeX on a TeX or e-TeX engine, there
are two package options (dvipdfm
and dvips
)
which instruct geometry which \
special
commands to use.
(Note that the options are ignored if you are using either PDFLaTeX
or VTeX.)
So, the resolution of the problem is to add
\usepackage[dvixxx,...]{geometry}(where
dvixxx
is your current favourite DVI
driver), and the document will run correctly with any of
LaTeX (whether or not run on VTeX) or PDFLaTeX.
Give the typearea package the pagesize
and it
will do the same job, for PDFLaTeX output and PostScript output from
LaTeX via dvips.
This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=papersize