Re: Un problema con \overset

#16386
Up
0
Down
::

Caro Enrico, ho provato a confrontare le due versioni:
`\documentclass{article}
\usepackage{amsmath,amsfonts}
\newcommand{\simstar}{\mathrel{\overset{*}{\smash[t]{\sim}\rule{0pt}{.5ex}}}}
\begin{document}
$\mathbb{R}^\mathbb{N}/\simstar$

$\{r_n\} \simstar \{s_n\}$
\end{document}`
e
`\documentclass{article}
\usepackage{amsmath,amsfonts}
\makeatletter
\def\@verrel#1#2{\vbox{\lineskiplimit\maxdimen\lineskip.22ex
\ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr}}}
\def\@nderrel#1#2{\vtop{\lineskiplimit\maxdimen\lineskip\z@
\ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr}}}
\def\simstar{\mathrel{\mathpalette\@verrel{\scriptstyle*\cr\sim}}}
\makeatother
\begin{document}
$\mathbb{R}^\mathbb{N}/\simstar$

$\{r_n\} \simstar \{s_n\}$
\end{document}`
La differenza è davvero impercettibile. Mi pare che nella “nuova” versione (quella che dici di aver preso a prestito dal Grand Wizard), l’asteriso sia leggerissimamente più in alto. Ma è una differenza che, anche ad ingrandimenti fortissimi, appena si nota.

Mi sbaglio?

Se è così e non sbaglio, penso che si possano usare liberamente tutte e due: sono pressoché uguali.

Funzionano in modo analogo; la seconda esegue un allineamento, che in LaTeX sarebbe circa
`\begin{array}{@{}c@{}}\scriptstyle*\\\sim\end{array}`
ma con spaziatura fra le righe ridotta. La prima esegue un allineamento analogo, ma le due righe sono effettivamente sovrapposte e puoi controllare meglio l’altezza del simbolo che va sopra, con \raise\hbox{…}

Ovvio che ci sia qualche minima differenza; con qualche conticino si potrebbero rendere identici, ma non ne vale la pena. Il vantaggio della prima è che puoi facilmente mettere il simbolo anche sotto, all’altezza preferita. Con il secondo devi usare la macro \@nderrel con \vtop invece che \vbox e scambiando l’ordine dei simboli.

Usa quella che ti pare; oppure rimani con \overset.

Ciao
Enrico

Go to top