Comment modifier correctement le format de papier ?#
Si votre sortie papier n’a pas la bonne taille et que vous avez vérifié que ce n’est pas dû à des réglages propres à Adobe Reader, le problème se situe vraisemblablement dans votre configuration de LaTeX. Les formats de papier peuvent être pénibles : LaTeX ne semble pas y prêter grand intérêt. De fait, il n’y a pas de commande DVI pour spécifier le papier sur lequel le document doit être imprimé, ce qui a conduit à une dichotomie où les commandes composent le texte en fonction des besoins de l’auteur tandis que le choix des pilotes de périphériques se fait indépendamment de ces commandes.
En pratique, LaTeX se sert par défaut du
format de papier américain Letter.
Et, comme la plupart des distributions proviennent actuellement d’Europe,
les pilotes utilisent généralement par défaut le format de papier ISO A4.
Tout ceci n’est pas vraiment heureux :
les utilisateurs peuvent toutefois assez facilement sélectionner un format de papier différent pour leur document.
En effet, LaTeX propose une gamme de formats, sous forme d’options dans les classes standard.
Néanmoins, l’utilisateur doit également être sûr que chaque fois que xdvi
, dvips
(ou autre) s’exécute,
il utilise le format de papier pour lequel le document a été conçu.
Le format de papier par défaut pour les pilotes DVI peut être modifié par une commande de gestion de la distribution
(texconfig
pour TeX Live, l’application Options
pour MiKTeX).
Un problème différent se pose pour les utilisateurs de pdfTeX.
Le format PDF dispose du moyen d’exprimer la taille du papier et pdfTeX a les variables système \pdfpagewidth
et \pdfpageheight
,
qui sont écrites dans le sortie du fichier PDF.
Malheureusement, la plupart des logiciels de base sont antérieurs à pdfTeX.
Même pdfLaTeX ne définit pas les valeurs correctes dans ces variables,
pour correspondre au format de papier spécifié dans une option \documentclass
.
Les pilotes DVI dvips
, dvipdfm
et leurs extensions (dvipdfmx
et xdvipdfmx
)
définissent les commandes \special
pour que le document spécifie son propre format de papier.
Dans ces cas, comme lorsque pdfTeX est utilisé, le format de papier peut être programmé par le document.
Les utilisateurs qui le souhaitent peuvent bien entendu consulter les manuels des différents programmes pour écrire le code nécessaire.
1. Avec les extensions geometry et zwpagelayout#
Les extensions geometry et zwpagelayout traitent des dimensions des différents éléments des pages.
Elles prennent de ce fait note de la taille du papier sur lequel le document va être imprimé
et peuvent émettre les commandes nécessaires pour garantir qu’un bon format de papier est utilisé.
Si geometry est utilisé lorsqu’un document est en cours de traitement par pdfLaTeX,
il peut définir les dimensions nécessaires « dans la sortie ».
Si le document est traité par LaTeX sur un moteur TeX ou ε‑TeX,
il existe des options d’extension qui indiquent à geometry quelles commandes \special
utiliser.
Notez d’ailleurs que les options sont ignorées si vous utilisez pdfLaTeX.
1.1. L’extension geometry#
Ainsi, une des solutions au problème, lorsque vous utilisez LaTeX, consiste à ajouter :
\usepackage[option-processeur,...]{geometry}
où option-processeur
indique à l’extension ce qui produira votre sortie PostScript ou PDF.
L’extension geometry connaît dvips
et dvipdfm
(qui sert également pour dvipdfmx
et xdvipdfmx
).
Si vous utilisez pdfLaTeX ou XeTeX, chargez :
\usepackage[option-programme,...]{geometry}
où option-programme
vaut pdftex
ou xetex
.
Des exemples sont données dans les questions suivantes :
1.2. L’extension zwpagelayout#
De son côté, zwpagelayout demande une option driver
(pilote) :
\usepackage[driver=valeur,...]{zwpagelayout}
Les valeurs autorisées pour cette option sont pdftex
, xetex
et dvips
. La valeur par défaut est unknown
(inconnu).
À faire
Ajouter un exemple
2. Avec les classes KOMA-script et memoir#
Bien entendu, les deux « grandes » classes KOMA-script et memoir fournissent leurs propres moyens d’obtenir le bon format de papier.
À faire
Ajouter des exemples
2.1. La classe KOMA-script#
La classe KOMA-script fournit des fonctionnalités de mise en page par le biais de l’extension typearea.
Chargez-la avec l’option pagesize
et elle s’assurera que le bon papier est sélectionné,
que ce soit pour la sortie PDF de pdfLaTeX ou la sortie PostScript via dvips
.
2.2. La classe memoir#
La classe memoir dispose des format de papier des classes standard (a4paper
, letterpaper
et ainsi de suite)
mais permet également à l’utilisateur de choisir un format de papier arbitraire,
en définissant les registres de longueur \stockheight
et \stockwidth
.
Les commandes \fixdvipslayout
(pour le traitement LaTeX) et \fixpdflayout
(pour le traitement pdfLaTeX)
ordonnent ensuite au processeur de produire une sortie qui indique le format de papier nécessaire.