Je ne réussis pas à centrer une figure MetaPost, même avec l'environnement figure et la commande \centering (et je crois bien qu'avec MetaPost, on peut s'en passer).
Qu'est-ce qui cloche dans le code suivant, en termes de centrage ?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
% pour composer cet ECM selon des usages vaguement européens
\documentclass[french]{scrartcl}
% choix de la fonte plex dans sa version sans empattements
\usepackage[sfdefault]{plex-sans}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage{luamplib}
% pour franciser la chose selon le paramètre passé à la classe
\usepackage{babel}
\begin{document}
Voici un carré :
\hspace{10pt}
% Centrage dans un environnement MetaPost
\begin{mplibcode}
beginfig(1);
% Dimensions et points
numeric u;
u := 72; % Taille d'un côté (1 inch en points typographiques)
Lors de la production d’une figure avec mplibcode, luamplib ne force ni le mode horizontal ni le mode vertical. Les figures ainsi pro-duites ne respectent donc pas, par défaut, les commandes d’alignement comme \centering ou \raggedleft, à moins d’utiliser explicitement la commande \leavevmode grâce au mécanisme verbatimtex. Voir l’article dans les cahiers : https://publications.gutenberg-asso.fr/cahiers/article/view/34/175
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
\documentclass{article}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage{luamplib}
\begin{document}
Voici un carré :
\begin{center}
% Centrage dans un environnement MetaPost
\begin{mplibcode}
verbatimtex \leavevmode etex;
beginfig(1);
% Dimensions et points
numeric u;
u := 72; % Taille d'un côté (1 inch en points typographiques)
@Maxime : j'ai utilisé l'instruction \everymplib{verbatimtex \leavevmode etex;}après\begin{document} et ça fonctionne parfaitement pour toutes les figures. Je marque donc la question comme résolue.
En revanche, attention : l'ECM proposé en réponse ne compile pas en ligne.
On peut aussi utiliser \mplibforcehmode dans le préambule qui est une commande du package luamplib qui force le mode horizontal pour les figures des environnements {mplibcode}
Professeurs de mathématiques dans le secondaire, connaissez-vous le package ProfCollege de Christophe Poulain ? Il est aussi utile que bien documenté !