HOW TO PRODUCE PDF FROM LATEX
D. Monniaux (David dot Monniaux at ens dot fr)
1 FONT PROBLEMS
1.1 Type1 and Type3 fonts
Modern LaTeX systems (teTeX, for instance) are capable of using at
least the following kinds of fonts:
* Type1
* METAFONT
While Type1 fonts can be used straight away in Postscript or PDF
output, METAFONT fonts have to be rasterized at some resolution
(typically 300 or 600 dpi), then included as Type3 fonts (each
character being assigned a bitmap image).
Acrobat Reader is very bad at displaying Type3 bitmapped fonts, making
the text very blurry and very tiresome to read; printing works
nevertheless.
If a PDF files shows as blurry in Acrobat Reader, one should ask
File -> Document info -> Fonts and check whether the fonts used in the
document are Type3.
[SEE TODO]
When making PDF files, one should therefore stick to Type1 fonts.
1.2 Computer Modern and similar fonts
There are some important issues with using CM and related fonts.
1.2.1 Generalities
1.2.1.1 Why use T1 fonts?
For text written in European languages with diacritic signs
(accents...), it is recommended to use
\usepackage[T1]{fontenc}
This poses certain difficulties with Type1 fonts.
Why not use the basic CM fonts?
The answer is that
a) CM fonts do not have certain characters, such as French guillemets
b) Accented characters are treated in the OT1 encoding used by CM fonts
as character + accent. This has two consequences:
1/ This makes copying text from a DVI or PDF file using those fonts
difficult, since a single ISO-8859-1 character may be represented
as a superposition of several glyphs.
2/ Standard TeX implementations won't be able to hyphenize accented
words. This may be worked around using MlTeX (MlTeX extensions can
be activated in teTeX; this needs recompiling the formats).
[TODO: document this]
1.2.1.2 Sizes
The common use with Postscript and TrueType fonts is to have one font
for all desired sizes. Each size is obtained by linear resizing.
On the other hand, Computer Modern and similar fonts in various sizes
are no homothetically derived. Smaller type sizes are relatively bolder and
wider; this is meant for improved legibility.
This means that many fonts will be included in the resulting
Postscript or PDF file, enlarging the file.
1.2.2 Specific fonts
1.2.2.1 Computer Modern fonts and AMS fonts
The basic (La)TeX fonts (Computer Modern) and the AMS fonts are
available for free as high-quality Type1 fonts, courtesy of Bluesky.
CTAN:/fonts/cm/ps-type1/bluesky
CTAN:/fonts/amsfonts/ps-type1
CTAN: can be ftp://ftp.jussieu.fr/pub/TeX/CTAN
Those Type1 fonts are *not* used by default by dvips.
You have to specify -Pamz and -Pcmz, or, alternatively, -Ppdf for them
to be used.
You may have to specify an option to the amsfonts package, since the
freely available Type1 AMS fonts do not include certain sizes:
\usepackage[psamsfonts]{amsfonts}
1.2.2.2 European Computer Modern
The EC fonts (those used with \usepackage[T1]{fontenc}) have only been
very recently been made available for free as Type1 fonts.
CTAN:/pub/TeX/CTAN/fonts/ps-type1/ec
Those fonts do not seem to have good hinting, which makes them less
suitable for low-resolution displays than the ones from Bluesky.
1.2.2.3 Almost European fonts
\usepackage{aeguill} builds almost complete virtual EC fonts using the
Type1 CM and AMS fonts.
1.3 Postscript fonts
1.3.1 Times
The simplest fonts to use for PDF output are Times / Helvetica /
Courier / Symbol. Those are supposed to be inside every Postscript
interpreter and any PDF viewer and need not be embedded inside the PS
or PDF file.
\usepackage{times} will use Times for serif font, Helvetica for sans
serif and Courier for typewriter (in current Acrobat Reader version,
they are rendered using Times New Roman, Arial and Courier New, but
this matters little, in my impression).
If you typeset mathematical formulas, you should make sure you use
compatible mathematical fonts, unless you want ugly results.
You may either:
* Purchase the MathTime fonts from Bluesky.
* Typeset mathematics using a mixture of CM math fonts,
Symbol and Times, using
\usepackage{mathptm}
\usepackage{mathptmx}
There's one sore point with this otherwise fine solution: there is no
bold Symbol font, thus no bold math version is declared. This can
prove to be a problem with AMS fonts, so you may have to use
\DeclareMathVersion{bold}
\usepackage[psamsfonts]{amsfonts}
to prevent spurious warnings from the AMS fonts package.
1.3.2 Other Postscript fonts
If you don't use mathematic formulas, you have more freedom in
choosing your fonts.
You may install the free URW font bundle, which ships with teTeX.
It includes lookalikes of the following fonts:
Avant Garde
Bookman
New Century Schoolbook
Palatino
Zapf Chancery
Zapf Dingbats
See _The LaTeX Companion_ for how to use these fonts.
2 HOW TO PRODUCE PDF
2.1 Without a Postscript intermediate
2.1.1 pdflatex
pdflatex is used exactly as latex, except that it produces PDF instead
of dvi. It ships with teTeX.
2.2.1 dvipdfm
dvipdfm (NOT dvipdf) produces PDF from dvi.
2.2 With a Postscript intermediate
I suppose you produce the Postscript with dvips.
2.2.1 Acrobat Distiller
Commercial non-free software from Adobe.
2.2.2 ps2pdf
ps2pdf is a script that comes in the Ghostscript distribution.
You should definitely use Ghostscript >= 6.0 to use ps2pdf. As of
December 2001, GNU Ghostscript is 6.51, so you can upgrade while still
using fully free software.
Some people claim ps2pdf does not work properly (blurry PDF).
As described before, this is because their PDF uses bitmapped Type3
fonts. This happens because of any or both of the following causes:
* They do not tell dvips to use Type1 fonts. Use the -Ppdf, or -Pamz
-Pcmz options!
* They use an obsolete version of Ghostscript. Ghostscript 5.x is
incapable of embedding Type1 fonts into Postscript and rasterizes
them as Type3 fonts.
This last point is very confusing since results can be different with
exactly the same packages and sequence of commands depending on the
Ghostscript version.
PLEASE MAKE SURE YOU USE GHOSTSCRIPT >= 6 AND DVIPS WITH TYPE1 FONTS
BEFORE POSTING ANY MESSAGE IN A MAILING-LIST CLAIMING ps2pdf DOES NOT
WORK.
2.2.3 dvipdf
dvipdf is basically the composition of dvips and ps2pdf, but it does
not supply the -Ppdf option to dvips! Argh!