LaTeX ou pdfLaTeX ?

Une source de confusion fréquente lorsqu’on débute est qu’il existe deux modes de compilation d’un fichier .tex : latex et pdflatex.

  • latex : il s’agit du mode « historique », la compilation fournit un fichier au format DVI, que l’on peut convertir en PS avec dvips, et/ou en PDF avec dvipdf ou dvips + ps2pdf

L’inconvénient est que toutes les images doivent être au format PS/EPS, ce qui est un peu contraignant puisqu’il faut convertir toutes les images dans ce format.

  • pdflatex : ce mode de compilation permet d’obtenir directement un fichier PDF et il est possible d’inclure des images aux formats PNG, JPG ou PDF, ce qui est tout de même plus pratique ! Par contre, certains packages utilisant des fonctionnalités Postscript (par ex. PSTricks) ne fonctionnent pas avec pdflatex. Ce mode permet aussi une meilleure gestion de liens internes dans les documents (avec le package hyperref)

Ces deux modes sont en fait basés sur le même moteur, pdfTeX (avec des options différentes), mais il en existe d’autres.

Il est possible de compiler un fichier .tex indifféremment avec les deux modes en utilisant le code suivant (avec le package ifpdf) et en disposant les figures dans les répertoires appropriés:

\ifpdf
    \graphicspath{{pngs/}{{pdfs/}}
\else
    \graphicspath{{epss/}}
\fi

On peut aussi utiliser cette syntaxe pour spécifier les options du package hyperref (pour le package graphicx il n’est nécessaire de spécifier le driver, pdftex ou dvips, celui-ci est déterminé automatiquement):

\ifpdf
    \usepackage[pdftex]{hyperref}
\else
    \usepackage[hypertex]{hyperref}
\fi

hyperref permet par ailleurs de remplir les propriétés d’un document PDF (uniquement avec pdflatex ??):

\hypersetup{ % Modifiez la valeur des champs suivants
    pdfauthor   = {Auteurs},%
    pdftitle    = {Titre du document},%
    pdfsubject  = {Sujet},%
    pdfkeywords = {Mots-clefs},%
    pdfcreator  = {PDFLaTeX},%
    pdfproducer = {PDFLaTeX}}

Commentaires