Tout est dans le titre : comment légender une figure MetaPost avec la fonte choisie pour l'ensemble du document ?

L'ECM suivant compose la légende de la figure dans une autre fonte et sans prendre en compte les caractères accentués :

% pour résister à l'impérialisme américain
\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 le logo MetaPost
\usepackage{hologo}
% pour franciser la chose selon le paramètre passé à la classe
\usepackage{babel}
\begin{document}

Ce texte, composé à l'aide du package plex-sans, introduit un carré dessiné avec \hologo{METAPOST} :

\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)
    pair A, B, C, D;
    A = (0, 0);
    B = (u, 0);
    C = (u, u);
    D = (0, u);

    % Dessin du carré
    draw A--B--C--D--cycle withpen pencircle scaled 1pt;

    % Label
    label.bot("Une légende composée avec une autre fonte", (A + B)/2 - (0, 20));

    endfig;
\end{mplibcode}

\hspace{10pt}

Et le texte continue ici, toujours composé avec Plex...

\end{document}

Comment obtenir une légende composée avec la fonte choisie et... le texte rédigé (c'est à dire avec tous ses caractères accentués) ?

Posée 23 Nov, 08:04

Pathe's gravatar image

Pathe ♦♦
7.5k43204251
Taux d'acceptation : 55%


Il suffit d’utiliser la commande textext de luamplib pour composer la chaîne de caractère avec le «TeX» du document (le mécanisme interne est un peu compliqué).

% pour résister à l'impérialisme américain
\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 le logo MetaPost
\usepackage{hologo}
% pour franciser la chose selon le paramètre passé à la classe
\usepackage{babel}
\begin{document}

% 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)
  pair A, B, C, D;
  A = (0, 0);
  B = (u, 0);
  C = (u, u);
  D = (0, u);

  % Dessin du carré
  draw A--B--C--D--cycle withpen pencircle scaled 1pt;

  % Label
  label.bot(textext("Une légende composée avec une autre fonte"), (A + B)/2 - (0, 20));

endfig;
\end{mplibcode}

\end{document}
Lien permanent

Publiée 23 Nov, 08:40

Maxime's gravatar image

Maxime ♦
1.4k42639
Taux d'acceptation : 60%

Modifiée 23 Nov, 08:41

@Maxime : je ne vois pas ce qu'il y a de compliqué ! C'est super !

(23 Nov, 08:49) Pathe ♦♦ Pathe's gravatar image
1

C’est le mécanisme interne à luamplib qui fait qu’il faille passer par textext qui est un peu compliqué. Une fois que l’on sait qu’il faut utiliser cette macro, en effet, ça n’est pas compliqué.

(23 Nov, 08:52) Maxime ♦ Maxime's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.