\engine{pdflatex}
pdfLaTeX Guide
pdfLaTeX est le moteur LaTeX le plus rapide et le plus largement compatible. Il compile le source .tex directement en PDF, offre la plus large prise en charge de paquets de tous les moteurs et reste le moteur par défaut de la plupart des modèles LaTeX et des éditeurs en ligne.
\section{Qu'est-ce que pdfLaTeX}
Qu'est-ce que pdfLaTeX ?
pdfLaTeX est une extension du moteur de composition TeX original de Donald Knuth, développée par Hàn Thế Thành dans les années 1990. Là où le TeX d'origine produisait des fichiers DVI (indépendants du périphérique), pdfLaTeX produit directement du PDF, ce qui supprime l'étape de conversion DVI vers PDF et permet des fonctionnalités propres au PDF comme les liens hypertextes, les signets, les métadonnées et les polices intégrées.
Moteur le plus rapide
Compile les documents simples en moins d'1 seconde. Le plus rapide de tous les grands moteurs LaTeX.
Compatibilité maximale
Presque tous les paquets CTAN ciblent pdfLaTeX en premier. Attendez-vous à presque aucun problème d'incompatibilité.
Prise en charge de microtype
Protrusion et expansion complètes des caractères pour une microtypographie de niveau professionnel.
\section{Quand l'utiliser}
Quand utiliser pdfLaTeX
\subsection{Commandes de compilation}
Exécuter pdfLaTeX en ligne de commande
pdfLaTeX est disponible dans toute installation de TeX Live. Voici les invocations les plus courantes, de la compilation simple en une passe au pipeline complet avec bibliographie. Ou utilisez latexmk pour automatiser le pipeline multipasse.
# Basic pdfLaTeX compilation
pdflatex document.tex
# Suppress most terminal output (nonstopmode)
pdflatex -interaction=nonstopmode document.tex
# Run twice to resolve cross-references
pdflatex -interaction=nonstopmode document.tex
pdflatex -interaction=nonstopmode document.tex
# Full pipeline with bibliography
pdflatex -interaction=nonstopmode document.tex
bibtex document
pdflatex -interaction=nonstopmode document.tex
pdflatex -interaction=nonstopmode document.tex
# Write output to a specific directory
pdflatex -output-directory=./build document.texPour la plupart des documents avec des références croisées, pdfLaTeX doit être exécuté au moins deux fois : une fois pour enregistrer les références, une autre pour les résoudre. Les documents avec bibliographie nécessitent une exécution de bibtex ou biber entre les passes pdfLaTeX.
\subsection{Options courantes}
Options pdfLaTeX courantes
Ces options contrôlent la façon dont pdfLaTeX gère les erreurs, les chemins de sortie et l'accès au shell. La plupart des pipelines CI/CD utilisent ensemble -interaction=nonstopmode et -halt-on-error.
-interaction=nonstopmodePoursuit sans s'arrêter sur les erreurs. Les erreurs sont consignées mais la compilation continue. Essentiel pour les pipelines CI/CD.
-interaction=batchmodeComme nonstopmode, mais supprime aussi toute sortie du terminal. Utile pour la compilation par lots silencieuse.
-output-directory=<dir>Écrit tous les fichiers de sortie (.pdf, .log, .aux) dans le répertoire indiqué. Garde votre arborescence source propre.
-jobname=<name>Remplace le nom du fichier de sortie. Utile quand votre fichier .tex porte un nom générique (par ex. main.tex).
-halt-on-errorS'arrête immédiatement à la première erreur. À combiner avec -interaction=nonstopmode pour une validation CI stricte.
-shell-escapeAutorise TeX à exécuter des commandes shell externes. Requis par des paquets comme minted (coloration syntaxique) et epstopdf.
-file-line-errorAffiche les erreurs au format file:line:error, plus facile à analyser dans les IDE et les outils d'analyse de journaux CI.
-synctex=1Génère un fichier SyncTeX qui relie les positions du PDF aux lignes du source. Permet la synchronisation source/PDF dans les éditeurs.
\section{Limitations}
Limites connues
pdfLaTeX est le moteur le plus mature, mais il a été conçu dans les années 1990 et porte des contraintes d'architecture que les moteurs plus récents corrigent.
Pas d'entrée Unicode native
pdfLaTeX treats source files as 8-bit byte streams. You must add \usepackage[utf8]{inputenc} and \usepackage[T1]{fontenc} for UTF-8 support. Characters outside the T1 font encoding require extra packages or workarounds.
Pas d'accès aux polices système
pdfLaTeX ne peut pas charger de polices arbitraires depuis votre système d'exploitation. Vous êtes limité aux polices préinstallées dans votre distribution TeX (Computer Modern, Latin Modern, etc.) ou aux polices empaquetées pour TeX sur CTAN.
Pas de polices mathématiques OpenType
Les polices mathématiques OpenType modernes (XITS Math, Libertinus Math, Fira Math) ne sont pas accessibles depuis pdfLaTeX. Si vous avez besoin de ces polices, passez à XeLaTeX ou LuaLaTeX avec le paquet unicode-math.
Prise en charge limitée du RTL et des écritures complexes
Les langues s'écrivant de droite à gauche (arabe, hébreu) et les écritures complexes (devanagari, thaï) exigent des contournements fastidieux avec pdfLaTeX. XeLaTeX et LuaLaTeX les gèrent nativement.
Limites de microtype sur certaines fonctionnalités
Bien que pdfLaTeX offre la meilleure prise en charge de microtype, les fonctions complètes de protrusion et d'expansion des caractères exigent des polices au format Type 1 ou OTF. Certains paquets de polices récents peuvent offrir une prise en charge réduite de microtype.
\section{Alternatives}
Quand passer à un autre moteur
pdfLaTeX est le bon choix par défaut pour la plupart des documents. Ne changez de moteur que lorsqu'un besoin précis ne peut pas être satisfait.
Votre document contient de l'arabe, du chinois, de l'hébreu ou d'autres écritures non latines
XeLaTeX ou LuaLaTeXVous devez utiliser une police système personnalisée (par ex. une police de marque de votre système d'exploitation)
XeLaTeXVous voulez des scripts Lua pour générer le contenu du document par programmation
LuaLaTeXVous avez besoin de polices mathématiques OpenType modernes comme XITS Math ou Libertinus Math
XeLaTeX ou LuaLaTeXVous voulez que latexmk gère automatiquement le pipeline de compilation multipasse
latexmk (encapsule pdfLaTeX)\subsection{Utilisation de l'API}
Compiler avec pdfLaTeX via l'API FormaTeX
FormaTeX exécute pdfLaTeX côté serveur. Vous envoyez du code source LaTeX, nous renvoyons un PDF. Aucune installation de TeX Live n'est requise de votre côté.
Passez "engine": "pdflatex" dans votre requête de compilation
Les quatre moteurs (pdfLaTeX, XeLaTeX, LuaLaTeX et latexmk) sont disponibles sur tous les plans. Changer de moteur demande seulement de modifier le champ engine dans votre requête d'API. Consultez la vue d'ensemble des moteurs pour la liste complète des options.
Compilez instantanément des documents pdfLaTeX
FormaTeX exécute pdfLaTeX, XeLaTeX, LuaLaTeX et latexmk dans le cloud. Aucune installation locale nécessaire. Une clé API, zéro infrastructure.

