# What is the practical difference between latex and pdflatex?

I understand that some packages (like PSTricks) can't be used with pdflatex. Are there any other differences between these tools?

Can we say that pdflatex is better if we don't care about ps?

-
I removed the "tex" tag. See the thread on meta: meta.tex.stackexchange.com/questions/51/avoid-using-the-tex-tag –  David Loeffler Aug 3 '10 at 9:07

Some packages only work with direct PDF output, since they utilise features not available in PostScript, as mentioned by Dima.

Another difference stems from the fact that `tex` and `pdftex` are simply different programs, implemented independently. In particular, author Hàn Thế Thành implemented features in pdfTeX which help improve the document’s microtypography. Some of these features have since been implemented in `tex` (the program, not the language), while others have remained exclusive to pdfTeX (although LuaTeX and XeLaTeX have also implemented some of them).

Here is a screenshot illustrating the difference (left: LaTeX, right: pdfLaTeX with microtype) – the example document was created with the help of the microtype package, which provides a simple interface to access the microtypography features:

[Taken from the TeXblog]

-
Wow didn't know about microtype =) –  Dima Jul 27 '10 at 12:07
+1 for microtype. (Damned daily vote limit.) It makes things look much nicer and really helps reduce hyphenation and overfull hboxes. –  vanden Jul 27 '10 at 15:33
Tikz works with both latex and pdflatex: it uses PS specials in DVI mode, I think. –  Joseph Wright Aug 3 '10 at 9:19
Aye, TikZ is not bound to pdflatex- it works with plain TeX, ConTeXt, latex, pdflatex- pretty much anything. PSTricks on the other hand requires PostScript support. –  Sharpie Aug 3 '10 at 18:40
@sharpie indeed, pstricks requires latex or xelatex, but in pdflatex it can be persuaded to work in separate processes. (actually, i have wondered whether there's a future in a translation process like that for metapost output in pdftex; worth thinking about, at least.) –  wasteofspace Feb 16 '12 at 11:27

I think the only reasons to continue to use `latex` over `pdflatex` are

• You need to use pstricks, or something else which requires dvips specials or particular features of a postscript workflow.
• You need to generate specifically postscript for some reason.
• You have to fit into an existing workflow (quite often journals require postscript figures, and so effectively require you to use `latex`).

Apart from those, I think that `pdflatex` is effectively the default.

(Note that `pdflatex` and `latex` are typically the same program, but when it's invoked as `latex` it defaults the value `\pdfoutput=0`, rather than `\pdfoutput=1`. If this is the case in your installation, you can use plain `latex`, set `\pdfoutput=1`, amd get PDF output rather than DVI, and vice versa.)

-
Even if you need a PostScript version for some strange reason, you can still use pdflatex and just create the PS version with something like `pdftops`. –  Jukka Suomela Aug 3 '10 at 17:16
One final reason to use latex: to create dvi files. Some people seem to prefer them for long term archival storage. –  András Salamon Aug 4 '10 at 19:26

Yet another reason to use pdflatex instead of latex: the `hyperref` package actually works, you can have line breaks in hyperlinks. Extremely useful if you want that your bibliography entries have DOI hyperlinks.

-
There is a package called `breakurl` that lets you make usable auto-breaking links under latex, at least when you make your .ps file via dvips. –  MSC May 8 at 16:03

You can use pstricks from pdflatex, by using a few tricks (all boils down to manual->automatic external invocation of latex&pstopdf to get pdf image of pstricks graphic which can then be picked up by pdflatex).

For beginners there are almost no difference. Once you get to advance usage you start to realise that special things need to be done to use Postscript constructs with pdftex (e.g. pstricks), but on the other hand pdftex engine gives you awesome stuff like pdf table of contents, pdf hyperlinks within document and URL to the web as well as generating pdf metadata, embedding movies / 3D objects, creating PDF-A ready documents for archiving and ability (with certain degrees of pain) to use TTF fonts.

Inverse search is a bit easier with latex. And dvi compilation & preview is much faster. But SyncTeX shows promise for awesome pdftex inverse and forward search.

If you don't use postscript stuff and care about creating high quality PDFs then pdflatex is preffered. But many people use both and have conditional compilation and macros in the preemble when using one or the other engine.

For beginners I would recommend pdflatex since most new users coming from WYSIWYG world of things do not know what dvi and ps are, but everyone nowadays is aware of PDF. After beginners stage it is an open-ended question which depends on particular needs with all engines having special features, advantages and disadvantages.

-
With the SyncTeX-aware editors I find that inverse search works better in PDF mode that in DVI mode. As you say, for new users PDF output is the way to go. I certainly don't use DVI mode myself (but then I only use PostScript rarely, and if so using auto-pst-pdt). –  Joseph Wright Jul 27 '10 at 16:40
I have SyncTeX-aware editor, I just don't have SyncTeX-aware viewer =( I'm on Linux and I don't want to use texmaker. –  Dima Jul 27 '10 at 17:12
To send material to other people you need PDF in the end (or dead trees, of course). So using pdfLaTeX saves the conversion steps, which is a reason I'd recommend PDF output for beginners (and indeed always use it myself). –  Joseph Wright Aug 3 '10 at 9:20

The most important practical difference for me is that with pdflatex I can use PDF images instead of EPS.

-

pdflatex allows me to use PNG images, and it's the easiest way to place screenshots into my documents.

-

Major reason to use Latex is to be able to use tex4ht.

Tex4ht needs dvi files generated from latex, it does not need pdflatex.

Without Latex, tex4ht will not work.

And since the cloud and HTML and the web is the future of publication, and since Tex4ht is the only feasible way to convert latex file to HTML pages (the only practical link we have between tex and the cloud really), I would say this makes latex even more important.

If I have to be sent to a deserted island and have to choose between taking latex or pdflatex with me, I would pick latex so I can use tex4ht and be able to write to the cloud and generate HTML using it.

http://www.tug.org/applications/tex4ht/mn.html

-

Graphic: Roughly, LaTeX knows nothing besides EPS (though most things can be wrapped into EPS via fig/xfig/winfig), `pdflatex` does all sorts of graphic (though not `.eps`)

pdfLaTeX does not work nice with `fancyhdr`, among others.

With graphic, you will prefer pdfLaTeX, without graphics, latex is more likely to deal with "everything else".

-
Welcome to TeX.SX! Would you mind to expand on (2) and (3)? –  moewe Oct 21 '13 at 20:23
I'm regularly using `fancyhdr` with `pdflatex` and I never realized they don't work well together: actually I've never had a problem with `fancyhdr` connected with the typesetting engine: it behaves as expected with `latex`, `pdflatex`, `xelatex` and `lualatex`. Can you tell something more about this? –  egreg Oct 21 '13 at 20:48