J’utilise Latin Modern Sans comme police par défaut pour mes présentations. Lorsque je dois mettre des noms de roi, il est fréquent que les élèves ne comprennent pas qu’il s’agit d’un II, ils pensent avoir affaire à "Il". Y-a-t-il un switch opentype que l’on peut activer pour obtenir des chiffres romains avec sérif (ou mieux, liés en haut et bas par un grand sérif)? Je peux toujours passer en roman juste pour ces chiffres, mais je préfèrerais une autre solution.

Comme j’utilise ConTeXt mais que je dois être assez isolé dans ce cas, je donne deux EMC

ConTeXt

Ouvrir dans l'éditeur Overleaf
\setuppapersize[S4]
\setupbodyfont[sans]
\language[fr]
\starttext
Henri~II est mort de manière aussi subite que malchanceuse.
%solution peu esthétique
Henri~{\rm II} est mort de manière aussi subite que malchanceuse.
\stoptext

LuaTeX

Ouvrir dans l'éditeur Overleaf
\usepackage[noamsmath]{beamer}
\usepackage{polyglossia}
\defaultlanguage{french}
\setsansfont{Latin Modern}
\begin{document}
 Henri~II est mort de manière aussi subite que malchanceuse.
%solution peu esthétique
Henri~{\rmfamily II} est mort de manière aussi subite que malchanceuse.
\end{document}

Posée 17 Jan '19, 15:05

sztruks's gravatar image

sztruks
3681313
Taux d'acceptation : 25%

Modifiée 17 Fév '19, 01:16

denis's gravatar image

denis ♦♦
7.0k1510

@sztruks Les formules de politesse et les signatures sont à éviter : celle(s) de votre contribution a (ont) été supprimée(s).

(17 Fév '19, 01:16) denis ♦♦ denis's gravatar image

En regardant les sources du paquet romanbar et le post indiqué par samcarter dans la discussion, j’ai pu trouver une solution utilisant les primitives TeX, donc valable pour ConTeXt (comme pour LaTeX d’ailleurs). Ce n’est pas une réponse utilisant la syntaxe ConTeXt.

Cela m’a fait découvrir quelques primitives TeX. Je comprends dans les grandes lignes ce que fait cette macro, mais je serais incapable de la modifier… Cette question de TeX S.E. m’a permis de remplacer le \sbox par un \setbox approprié.

Ouvrir dans l'éditeur Overleaf
\setuppapersize[S4]
\setupbodyfont[sans]
\language[fr]

\def\Romain#1{\setbox0\hbox{#1}\dimen0=\dimexpr\wd0+1pt\relax
  \hbox to \dimen0 {\rlap{\vrule width\dimen0 height 0.06ex depth 0.06ex}% 
    \rlap{\vrule width\dimen0 height\dimexpr\ht0+0.03ex\relax 
            depth\dimexpr-\ht0+0.09ex\relax}%
    \kern.5pt#1\kern.5pt}}

 \starttext
     Henri~\Romain{II} est mort de manière aussi subite que malchanceuse.
 \stoptext

résultat de la compilation

Lien permanent

Publiée 16 Fév '19, 20:22

sztruks's gravatar image

sztruks
3681313
Taux d'acceptation : 25%

Modifiée 16 Fév '19, 23:31

1

Pouvez vous choisir votre réponse comme réponse correct ? Je pense que votre réponse est plus utile.

(20 Fév '19, 21:29) samcarter samcarter's gravatar image

D’accord, mais les deux réponses sont liées : sans les indications et la discussion de l’autre réponse, cette solution n’aurait jamais vu le jour.

(21 Fév '19, 00:46) sztruks sztruks's gravatar image

Pour votre exemple en lualatex, vous pouvez utiliser l'extension romanbar:

Ouvrir dans l'éditeur Overleaf
% !TeX TS-program = lualatex

\documentclass[noamsmath]{beamer}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setsansfont{Latin Modern Sans}
\usepackage{romanbar}

\begin{document}
\begin{frame}
 Henri~II est mort de manière aussi subite que malchanceuse.
%solution peu esthétique
Henri~{\Romanbar{2}} est mort de manière aussi subite que malchanceuse.
Louis~{\Romanbar{14}}
\end{frame}
\end{document}

alt text

Lien permanent

Publiée 17 Jan '19, 15:24

samcarter's gravatar image

samcarter
8.2k2817
Taux d'acceptation : 57%

Modifiée 17 Jan '19, 15:31

Merci ! Si je compile mon exemple ConTeXt avec la macro d’egreg citée dans la documentation de romanbar, j’ai malheureusement une erreur avec sbox. Est-ce que cette boîte est une primitive LaTeX?

(17 Jan '19, 15:44) sztruks sztruks's gravatar image

@sztruks Pourriez-vous s'il vous plaît montrer le code que vous avez essayé?

(17 Jan '19, 16:01) samcarter samcarter's gravatar image

\def\barroman#1{\sbox0{#1}\dimen0=\dimexpr\wd0+1pt\relax \makebox[\dimen0]{\rlap{\vrule width\dimen0 height 0.06ex depth 0.06ex}% \rlap{\vrule width\dimen0 height\dimexpr\ht0+0.03ex\relax depth\dimexpr-\ht0+0.09ex\relax}% \kern.5pt#1\kern.5pt}}

Pour obtenir une mise en page plus lisible, voici le lien vers la question TEX S.E tiré de la documentation http://tex.stackexchange.com/questions/24065/roman-numerals-formatting/24084#24084

Il me semble que s’il s’agissait uniquement de primitives TeX, la macro devrait passer sous ConTeXt.

(17 Jan '19, 16:19) sztruks sztruks's gravatar image

@sztruks Merci d'accepter! Mais il n'y a pas besoin de se dépêcher, vous pouvez laisser la question ouverte jusqu'à ce que votre problème soit réellement résolu. Peut-être que quelqu'un d'autre a une meilleure réponse.

(18 Jan '19, 14:49) samcarter samcarter'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.