
Ich möchte ein mathematisches Objekt mit einer Pfeilspitze (von tikz) unterstreichen, ohne dem Zeilensprung zusätzlichen Platz hinzuzufügen, so
The object C has an underline with an arrowhead
→
from tikz. The only problem is the extra space
between the lines.
Im Moment verwende ich den folgenden Code (MWE)
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix,arrows,decorations.markings}
\newcommand{\subtodisplay}{%
{\tikz[baseline=-2ex] \draw[-stealth,line width=.4pt] (.3ex,0ex) -- (1.7ex,0ex);}
}
\begin{document}
The object $\mathop{C}\limits_{\subtodisplay}$ has an underline with an
arrowhead from tikz. The only problem is the extra space between the lines,
which becomes apparent when adding extra text to get at least three lines.
\end{document}
Zusätzlicher Abstand durch tiefgestellte/hochgestellte Zeichen ist für mich oft ein Problem. Gibt es eine Möglichkeit, den Zeilenabstand zu erzwingen? In diesem Fall ist der zusätzliche Abstand offensichtlich nicht erforderlich:
(Normalerweise muss damit nur ein einzelner Buchstabe unterstrichen werden, daher könnte die Größe festgelegt werden, obwohl ich eine Antwort begrüßen würde, die mit variabler Breite funktionieren würde.)
Antwort1
Warum verwendest du nicht stattdessen den Befehl \underrightarrow? Zum Beispiel so:
\underrightarrow{\mho}
Erhalten:
Sie können auch mehrere Buchstaben/Ausdrücke unterstreichen:
\underrightarrow{\mho+\sum^{n}_{i=1}K=0+\Psi}
Aber Sie werden dies nicht sehr oft mit mehreren Buchstaben verwenden
Antwort2
Hier ist eine mögliche Lösung:
\documentclass[varwidth,border=50]{standalone}
\usepackage{tikz}
\usepackage{blindtext}
\newcommand{\tikzunderarrow}[2][red]{\tikz[baseline={(N.base)}]{
\node[inner sep=0, outer sep=0](N) {#2};
\draw[overlay, -latex, line width=.04em, #1]
([yshift=-.14em]N.south west) -- ([yshift=-.14em]N.south east);}}
\begin{document}
A test sentence : \tikzunderarrow{ypqj to ckeck if it is ok ;)}.
\blindtext
And we check with math formula \tikzunderarrow{$\left[ \sqrt{x^2+y^2} \right]$},
and a {\Large \tikzunderarrow[purple,|-stealth]{Large}} underarrow.
\end{document}
BEARBEITEN:Ich bin dem Vorschlag von Peter Grill gefolgt und habe hinzugefügt, overlay
dass die vertikale Größe gleich dem Text im Knoten bleiben soll.
BEARBEITEN 2:Ich habe etwas Blindtext hinzugefügt, um zu zeigen, dass der vertikale Abstand in Ordnung ist.
BEARBEITEN 3:Wie von Paul Gaborit und Earthliŋ vorgeschlagen, habe ich inner xsep=0
durch ersetzt inner sep=0
. Und jetzt ist diese Antwort ein Community-Wiki.
BEARBEITEN 4:Und jetzt können wir den Pfeilstil als optionales Argument ändern.