\engines{formatex}
pdfLaTeX, XeLaTeX, LuaLaTeX et latexmk — chaque moteur a ses atouts. Choisissez le bon outil pour chaque document. Changez avec un seul paramètre.
\engine{pdflatex}
Le cheval de trait
Rapide, fiable et universellement compatible.
pdfLaTeX est le moteur par défaut pour une bonne raison : c'est lui qui offre la plus large prise en charge de paquets de tout l'écosystème TeX, les temps de compilation les plus courts et des décennies d'épreuves sur des millions d'articles universitaires. Si votre document n'exige ni police système personnalisée ni texte de droite à gauche, pdfLaTeX est presque toujours le bon choix.
Vitesse typique
80–200ms
Le plus rapide
Passes
1 (2–3 avec références)
Prise en charge des polices
Type1, OTF via pdffonts — pas de polices système
\begin{example}
\documentclass{article}
\usepackage{amsmath}
\usepackage{geometry}
\begin{document}
\section{Euler's Identity}
One of the most beautiful results in mathematics:
\[ e^{i\pi} + 1 = 0 \]
\section{Series Expansion}
\[
\sum_{n=0}^{\infty} \frac{x^n}{n!} = e^x
\]
\end{document}Cas d'usage
Articles universitaires
Les modèles IEEE, ACM et Springer ciblent tous pdfLaTeX. La plupart des systèmes de soumission de conférences l'attendent.
Documents riches en mathématiques
amsmath, amssymb, amsthm — prise en charge complète. Équations complexes, environnements de théorèmes, démonstrations.
Rapports techniques
Paquets CTAN standard, rendu stable, sortie prévisible d'une version de TeX Live à l'autre.
Présentations
La classe Beamer fonctionne mieux avec pdfLaTeX. Cycle de reconstruction le plus rapide pendant le développement.
Paquets populaires
À éviter si...
\usepackage{formatex-api}
{
"latex": "\\documentclass{article}...",
"engine": "pdflatex"
}\engine{xelatex}
Le typographe
Unicode natif. Polices système. OpenType.
XeLaTeX a été conçu dès l'origine pour la typographie moderne. Il lit directement l'UTF-8, charge n'importe quelle police installée sur le système via fontspec et expose toutes les fonctionnalités d'OpenType : ligatures, petites capitales, variantes stylistiques, et plus encore. Le moteur de référence pour les documents multilingues et la composition soignée.
Vitesse typique
150–350ms
Rapide
Passes
1 (2 avec bibliographie)
Prise en charge des polices
Toute police système OpenType ou TrueType via fontspec
\begin{example}
\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainfont{Noto Serif}[
Ligatures = TeX,
Numbers = OldStyle
]
\setmainlanguage{english}
\setotherlanguage{arabic}
\begin{document}
English paragraph with old-style numerals: 1234.
\begin{Arabic}
هذا نص باللغة العربية مع ترقيم صحيح.
\end{Arabic}
\end{document}Cas d'usage
Documents multilingues
polyglossia gère plus de 80 langues. Mélangez arabe et anglais dans un même document avec un basculement correct entre droite-gauche et gauche-droite.
Typographie de marque
Utilisez n'importe quelle police OTF/TTF via fontspec. Polices d'entreprise, caractères éditoriaux, identité de marque.
Articles de linguistique
Caractères de l'alphabet phonétique international, symboles phonétiques Unicode, écritures personnalisées — tout est géré nativement depuis la source.
PDF au design soigné
Accès complet aux fonctionnalités OpenType : ligatures, césures facultatives, jeux stylistiques, paires de crénage.
Paquets populaires
À éviter si...
\usepackage{formatex-api}
{
"latex": "\\documentclass{article}...",
"engine": "xelatex"
}\engine{lualatex}
Le programmeur
Des scripts Lua dans votre document.
LuaLaTeX intègre un interpréteur Lua 5.3 complet directement dans le moteur de composition. Vous pouvez écrire du code Lua qui manipule les rouages internes de TeX, génère du contenu par programmation, parcourt des structures de données et construit des tableaux dynamiques au moment de la compilation — le tout dans un seul fichier .tex. Il partage aussi les capacités de polices de XeLaTeX via fontspec.
Vitesse typique
200–500ms
Modéré
Passes
1–3 en général
Prise en charge des polices
Comme XeLaTeX — OpenType complet via fontspec
\begin{example}
\documentclass{article}
\usepackage{luacode}
\usepackage{booktabs}
\begin{document}
\begin{luacode*}
local items = {
{ "January", "\$12,400" },
{ "February", "\$15,830" },
{ "March", "\$9,220" },
}
tex.print("\\begin{tabular}{lr}")
tex.print("\\toprule Month & Revenue \\\\ \\midrule")
for _, row in ipairs(items) do
tex.print(row[1] .. " & " .. row[2] .. " \\\\")
end
tex.print("\\bottomrule \\end{tabular}")
\end{luacode*}
\end{document}Cas d'usage
Documents pilotés par les données
Parcourez des tableaux, construisez des tables à partir de données, calculez des valeurs — le tout en Lua à la compilation. Aucun script externe.
Contenu programmatique
Générez des structures répétitives (par ex. tableaux de 50 lignes, figures paramétriques) sans copier-coller du LaTeX.
Typographie avancée
Accédez aux rouages bas niveau de TeX via Lua. Crénage personnalisé, manipulation de glyphes, remplacement des règles de césure.
Rapports dynamiques
Intégrez la logique métier au document lui-même. Conditions, calculs, sorties formatées.
Paquets populaires
À éviter si...
\usepackage{formatex-api}
{
"latex": "\\documentclass{article}...",
"engine": "lualatex"
}\engine{latexmk}
Le chef d'orchestre
Compilation automatique en plusieurs passes. Chaque référence résolue.
latexmk n'est pas un moteur TeX : c'est un système de build intelligent qui enveloppe pdfLaTeX et l'exécute autant de fois que nécessaire pour résoudre toutes les références avant, citations, entrées de table des matières et index. Lorsque vous indiquez latexmk, FormaTeX utilise pdfLaTeX comme pilote sous-jacent et gère automatiquement la logique des passes.
Vitesse typique
400ms–3s
Variable
Passes
Détection automatique (généralement 2–4)
Prise en charge des polices
Comme pdfLaTeX (latexmk pilote pdfLaTeX par défaut)
\begin{example}
\documentclass{article}
\usepackage[backend=biber, style=ieee]{biblatex}
\usepackage{hyperref}
\addbibresource{references.bib}
\begin{document}
\section{Related Work}
Neural scaling laws were studied by \cite{kaplan2020scaling}.
The attention mechanism was introduced in \cite{vaswani2017attention}.
See \autoref{sec:method} for our approach.
\section{Method}\label{sec:method}
...
\printbibliography
\end{document}Cas d'usage
Articles universitaires avec citations
Les bibliographies BibTeX et Biber exigent au moins deux passes. latexmk s'en charge automatiquement.
Livres et thèses
Table des matières, liste des figures, index, glossaires — tout est résolu au fil de plusieurs passes.
Documents avec renvois
\ref, \pageref, \eqref, \autoref nécessitent tous une seconde passe. latexmk la détecte et relance si besoin.
Documents avec paires \label/\ref
Tout document avec des références internes. latexmk vérifie le fichier .aux après chaque passe pour s'assurer qu'il est complet.
Paquets populaires
À éviter si...
\usepackage{formatex-api}
{
"latex": "\\documentclass{article}...",
"engine": "latexmk"
}\begin{tabular}
Les quatre moteurs sont disponibles sur chaque offre. Aucune configuration requise.
| Fonctionnalité | pdfLaTeX | XeLaTeX | LuaLaTeX | latexmk |
|---|---|---|---|---|
| Vitesse typique | 80–200ms | 150–350ms | 200–500ms | 400ms–3s |
| Passes de compilation | 1 | 1 | 1 | Auto (2–4) |
| Saisie Unicode | Partiel | Oui | Oui | Hérité |
| Polices système (OTF/TTF) | Non | Oui | Oui | Non |
| Scripts Lua | Non | Non | Oui | Non |
| Bibliographie automatique | Non | Non | Non | Oui |
| Compatibilité des paquets | maximale | élevée | élevée | pdflatex |
\DeclareMathOperator{choose}
Répondez à ces questions dans l'ordre. Arrêtez-vous dès qu'une réponse correspond.
Votre document comporte-t-il des citations ou une bibliographie ?
Avez-vous besoin d'une police système personnalisée ou de texte de droite à gauche / multilingue ?
Avez-vous besoin de scripts Lua ou de contenu généré par programmation ?
Document standard — maths, tableaux, figures ?
\note
La plupart des charges de travail en production utilisent pdfLaTeX pour 80 % des documents. Passez à XeLaTeX lorsque des exigences de polices apparaissent. Réservez latexmk pour les articles de recherche riches en citations.
pdfLaTeX par défaut
Si vous générez des documents programmatiques (factures, certificats, rapports) sans polices personnalisées, pdfLaTeX offre le temps de démarrage le plus rapide.
Changer de moteur par requête
Le paramètre de moteur est défini par compilation. Une seule clé API peut utiliser pdfLaTeX, XeLaTeX et latexmk simultanément pour différents types de documents.
Utilisateurs académiques : utilisez latexmk
Les articles avec citations nécessitent presque toujours plusieurs passes. latexmk gère cela automatiquement — sans compter les passes manuellement.
LuaLaTeX pour les sorties IA
Si votre LLM génère du LaTeX avec de la logique Lua intégrée, LuaLaTeX le gère proprement. Le runtime Lua est isolé de notre côté.
\begin{document}
Sans configuration. Sans installation de TeX Live. Changez de moteur avec un seul paramètre.