I appreciate that in the past, latex was faster than pdflatex, but computer speeds being what they are nowadays, I can't see any difference in how quickly documents compile...

So, given that the end product I want is the PDF, are there good reasons not to always compile to pdf?

  • 7
    Closely related question: tex.stackexchange.com/questions/349/… – provides many good reasons for using pdflatex instead of latex (and one good reason for using latex instead of pdflatex). Commented Sep 6, 2010 at 21:25
  • 1
    “given that the end product I want is the PDF…” — one reason for compiling to DVI is when the end product you want is not the PDF. (Example: SVG.) Commented Mar 23, 2017 at 23:45

6 Answers 6


Unless you are a heavy PSTricks user, I think the answer is no, you can always go to pdf directly. Actually, in modern TeX distributions, latex is pdflatex in dvi mode; the underlying engine is the same.

  • 13
    as a side note: and tikz/pgf which works well with pdflatex and is a kind of substitute for pstricks, thus there is probably no reason to use pstricks today Commented Sep 6, 2010 at 20:52
  • 4
    @Khaled: There are two overlapping, but basically different layout implementations in Pdftex. Pdftex came from the work Hàn Thế Thành did towards his Phd thesis on microptypography, and it isn't a conservative change to Tex's layout: microtypography only works with the PDF layout engine, not the DVI engine. Pdftex keeps track of state associated with Pdf generation, whilst the DVI engine just injects raw Postscript code into PS specials. They're quite different. Commented Sep 7, 2010 at 8:20
  • 2
    @Khaled: I'm less sure of what I've been saying... Some details though: the microtype package says that font expansion, not surprisingly, doesn't work with the DVI engine/pathway. There's stuff to do with page geometry that Pdftex has to keep track of to generate PDFs which, to be conservative over Tex, it should not bother with in DVI mode. Commented Sep 7, 2010 at 12:41
  • 4
    @Khaled: Be very careful with your conclusion that, since latex and pdflatex are symlinks to the same command, they must be the same. This is simply not true: a program can check how it was invoked (i.e. via which symlink/command name) and act accordingly. Many applications do that, and so does pdftex – clearly at least for the purpose of loading the LaTeX macro packages when invoked via [pdf]latex. (But you could still be right.) Commented Sep 8, 2010 at 8:43
  • 2
    xelatex compiles to PDF and can handle PSTricks (and eps,png,jpg,...). Commented Jun 2, 2011 at 13:01

There is a reason: pdflatex's lack of support for eps figures. If you have a program that only outputs eps graphics and wants to include them in your document, the best alternative is to use latex + dvipdf; if you use pdflatex you have to convert them somehow, and the most practical way is to use epstopdf, whose output is underwhelming.

EDIT: My point is: the pdf outputted by epstopdf is buggy and ugly; so if you can't generate the picture in pdf, your best shot is using latex instead of pdflatex.

  • 7
    It's way easier to create EPS from a program than to create PDF. Plus EPS file are editable with a texteditor if your picture is vector graphics and you know what you're doing.
    – lhf
    Commented Sep 6, 2010 at 18:43
  • 14
    epstopdf seems to make this answer irrelevant?
    – Seamus
    Commented Sep 6, 2010 at 20:16
  • 22
    Not only that, but starting with TeXlive 2010, epstopdf will be called automatically when you run pdflatex, so for all intents and purposes, pdflatex will support .eps. (XeLaTeX already does.)
    – frabjous
    Commented Sep 6, 2010 at 20:28
  • 5
    Taco is writing a PostScript interpreter in Lua (escrito.luatex.org), so I think it is going to eliminate the stated two reasons (PStricks and EPS) for luatex based formats). Commented Sep 7, 2010 at 9:43
  • 14
    it's not just that pdflatex doesn't have support for eps figures. once inside a pdf file, it may not be possible to determine what's a figure and what's text. so a check for, say, line thickness (very thin lines disappear in printing) is no longer possible. but that's easy with dvi+eps. Commented Sep 7, 2010 at 16:29

Some of the journals I use require figures to be submitted separately in eps or tiff format, so that they can deal with not just the latex work, but also the archiving of the figures in higher resolution for the journal website. I don't know why they prefer eps and tiff to pdf, but they do, and they are "the boss".

  • 12
    Some humanities journals don't even accept submissions in LaTeX, so consider yourself lucky that the journals you use are savvy enough to even think of specifying what image formats to use...
    – Seamus
    Commented Sep 8, 2010 at 12:34

There is another reason: PDF files produced with latex and dvipdfmx are much smaller than those produced with pdftex. The reason is that dvipdfmx embeds fonts as CFF (Compact Font Format). For short texts the difference is big. You can achive the same (and more, such as image compression) by using pdfsizeopt. I always use dvipdfmx instead of pdflatex. A short text that has 73 KB with pdflatex has only 9 KB with latex and dvipdfmx.


One reason I can think of: xdvi is supposed to support reverse search (a.k.a. inverse search). I.e. you click in xdvi on some text and directly jump to the corresponding location in the text-editor.

I never tried it, but it sounds neat.

It seems that some xdvi clones support that feature for dvi files, too.

I guess that current PDF viewer/pdflatex combinations does not support reverse search ...

  • 1
    See the question tex.stackexchange.com/questions/2006/… . SumatraPDF is said to support it. Commented Sep 7, 2010 at 20:03
  • 6
    TeXWorks, Evince and Okular also support reverse search, if you are using a sufficiently recent engine with synctex support (all the popular three engine have synctex support for a while now). Commented Sep 8, 2010 at 2:08
  • @Khaled: Cool, do you have some nice link in your back pocket that show how to use synctex and reverse search?
    – Johan
    Commented Sep 8, 2010 at 5:31
  • 3
    @Johan: You need to activate synctex for your document by either passing --synctex=1 at command line or the primitive \synctex=1 in your document, how to reverse search now depends on your viewer/editor (in TeXWorks you press ctrl while clicking the target either in source or pdf). Commented Sep 8, 2010 at 9:54
  • 1
    I must try that :)
    – Johan
    Commented Sep 8, 2010 at 15:17

You can render DVI really fast.

My custom, plain TeX, DVI renderer (which is essentially a combination of dvipng for rendering and KerTex for compiling .tex files) runs at ~60 fps for single-page documents (1920x1080), and the DVI renderer alone runs at ~120 fps (1920x1080) and ~250 fps (960x1080) for more pages. And that's that pure CPU rendering, single-threaded.

So not only is there a huge advantage in pure DVI; there's also a huge advantage is plain TeX. (Eventually you'll probably want to extend it, but it should be done without the massive LaTeX bloat. You can get a working TeX distribution for ~6 MB. Here's some of the stuff you can do with such a distribution. I haven't figured out a nice way of inserting images, though.)

A major disadvantage of DVI is that, as far as I know, it doesn't support embedding the fonts in the file itself. (You should be able to embed them yourself, but, if DVI doesn't allow that, then that'd be a custom extension.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .