See the difference!

First, just to motivate what follows, download and compare the following two PDF files, both created from the same TeX input using tex and dvips to create a PostScript file and then Adobe Acrobat Distiller (TM) to convert from PostScript to PDF(*). The first uses fonts bitmapped at 600 dpi (the default configuration of dvips), the second uses scalable fonts. Zoom in on a word and you can see what's happening: the 600dpi version does not have the "infinite resolution" that the scalable version does (guess what: it only has 600dpi). This makes no difference when printing to a device with 600dpi resolution, but a helluvalot of difference when viewing on screen with some other incommensurate resolution.

Using Computer Modern Type 1 Fonts with Dvips

In a nutshell, the issue is that by default dvips assumes that you are sending your output to a 600dpi printer and creates a PostScript file with embedded Computer Modern fonts bitmapped at this resolution. There are two ways to make dvips use scalable fonts instead:
  1. Tell it not to use the default:
    $ dvips -P pdf file.dvi
    the -P pdf command line switch tells dvips to produce output for the "printer" called "pdf". In practice, this means dvips will use a different configuration file, in this case
    which is set up to produce output with scalable fonts.
  2. Change the default. This means altering the default configuration file
    so that dvips produces output with scalable fonts even without the "-P" command line switch. This requires only a couple of steps:
    1. Symlink the font maps into the right directory:
      # cd /usr/share/texmf/dvips/config
      # ln -s ../bluesky/psfonts.amz ../bluesky/psfonts.cmz .
      (N.B. there is a necessary floating period at the end of the last line above.)

    2. Add these font maps to the list of Type 1 fonts that dvips will use: edit the file /usr/share/texmf/dvips/config/ and add the two lines below the three comments
      % This shows how to add your own map file.
      % Remove the comment and adjust the name:
      % p
      p +psfonts.amz
      p +psfonts.cmz
Note that dvips was already using Type 1 for all the fonts listed in the file /usr/share/texmf/dvips/config/


(*) The intermediate .dvi and .ps steps could be skipped by using a program such as pdftex to go directly from .tex source to .pdf. Doing this avoids the whole problem, since dvips is no longer involved in the process and pdftex uses scalable fonts by default. However, if you have PostScript figures embedded in your text, sometimes the easiest thing to do is to go through an intermediate PostScript phase on your way to .pdf (although the figures could be converted to .pdf using e.g. ps2pdf, and then embedded in the text). Note also that ps2pdf is not an adequate substitute for Adobe Distiller if you are trying to use scalable fonts; quoting from the manpage
       The one current great shortcoming of ps2pdf is that except
       for the fourteen built-in PDF fonts, it converts all fonts
       in  the  PostScript  file to bitmap fonts in the PDF file,
       and scrambles the character codes so that  the  output  is
       not searchable.  (Normally it produces 720dpi bitmaps, but
       you can change this using Ghostscript's  -r  option.)   We
       intend to mostly fix this by the end of 1998.