Quality of PDF from PostScript

Any output of dvips may (in principle) be converted to PDF, using either a sufficiently recent version of ghostscript or Adobe's (commercial) Distiller, but the results can be pretty poor if certain simple precautions are omitted.

First, it's important to use type 1 fonts in preparing the output; Metafont bitmap fonts get converted to type 3 fonts when converting to PDF, and Adobe's Acrobat Reader (which most of the world uses to view PDF files) makes a very poor fist of displaying type 3 fonts. If you've written a document that uses nothing but fonts such as Adobe Times, which only exist in type 1 format, no further action is actually required; however, most ordinary (La)TeX documents contain at least odd characters that originate in Metafont, and it's advisable to tell dvips to use type 1 versions regardless. One does this by using the dvips switches -Pcmz and -Pamz.

Second, if you're using ghostscript (or the ps2pdf script that's distributed with it) make sure you have an appropriate version. Again, if your document contains nothing but the "basic PostScript" set of fonts (Times, etc), the restrictions are less burdensome and you can get away with using ghostscript version 5.50; however, that version makes type 3 fonts of any type 1 fonts embedded in the PostScript, which is pretty unsatisfactory. To be safe, ensure that you're using ghostscript version 6.00 at least (at the time of writing, version 7.04 is current).

Third, some versions of Acrobat Reader are confused by characters that are in positions where Adobe fonts don't hold characters, and most Metafont-supplied fonts have such characters (even after they've been converted to type 1). Dvips provides a means for remapping these characters to places where they'll be harmless; to invoke this facility, execute dvips with the switch -G1

Recent distributions of dvips come with a "pdf" pseudo-printer description file; this bundles selection of the type 1 fonts and character remapping with setting a very high nominal printer resolution, thus sidestepping dvips's tendency to 'optimise' output destined for low-resolution printers. Use this by including the -Ppdf switch in your dvips command line.