\overset und align-Umgebung: Wie erhält man die richtige Ausrichtung?

\overset und align-Umgebung: Wie erhält man die richtige Ausrichtung?

Ich verwende die alignUmgebung zusammen mit dem \oversetBefehl, um Text über ein Beziehungssymbol zu legen. Hier ist mein MWE:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{amsmath}

\begin{document}
\begin{align*}
f(x)&=g(x)\\
    &\overset{something}{=} h(x)
\end{align*}
\end{document}

Und die Ausgabe ist

falsche Ausrichtung

Wie Sie sehen, ist die Ausrichtung falsch oder zumindest nicht das, was ich möchte! Ich möchte, dass die beiden Gleichheitszeichen aneinander ausgerichtet sind, während ich mit meinem Code die Ausrichtung des ersten Gleichheitszeichens mit dem Anfang des Textes über dem Symbol erhalte!

Ich habe es bereits versucht mit

\overset{something}{&=} h(x)

Und

\overset{something}&{=} h(x)

aber beide Lösungen führten zu einem Fehler.

Wie erreiche ich die richtige Ausrichtung?

Bearbeiten: Die ursprüngliche Frage bezog sich auf \buildrel, aber wie @egreg in einem Kommentar sagte, wird dieser Befehl in LaTeX nicht unterstützt, deshalb habe ich ihn durch ersetzt \overset.

Antwort1

Deraligned-oversetPaket bietet nun eine einfache Lösung dafür: Schreiben Sie einfach

\documentclass{article}
...
\usepackage{aligned-overset}
\begin{document}
\begin{align*}
  f(x)&=g(x)\\
  \overset{something}&{=} h(x)
\end{align*}
\end{document}

Entsprechende Ausgabe

Antwort2

Ich würde etwas auf eine Relation stapeln, indem ich \stackrel{<stack>}{<relation>}(von etwas Ähnlichem wie \overset) verwende undmathtools's \mathclap. Platzkorrekturen können durch die Verwendung eines geeigneten \hspace: vorgenommen werden.

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\begin{align*}
  f(x) &= g(x) \\
       &\buildrel{something}\over{=} h(x)
\end{align*}

\begin{align*}
  f(x) &= g(x) \\
       &\stackrel{\mathclap{\text{something}}}{=} \hspace*{1.5em} h(x) \\
       &\overset{\mathclap{\text{something}}}{=} \hspace*{1.5em} h(x)
\end{align*}

\end{document}

Vermeiden Sie jedoch lange Ausdrücke zu Symbolen. Stattdessen können Sie ein neues Symbol definieren, um die Beziehung darzustellen.

Antwort3

Sie sollten nicht verwenden \buildrel, da dies kein unterstützter Befehl von LaTeX ist, sondern \overset.

Sie können die Ausrichtung mithilfe eines Phantoms erreichen, aber meiner Meinung nach ist es besser, eine Nebenbedingung hinzuzufügen:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage{amsmath}

\begin{document}
Possible way
\begin{align*}
f(x)&\overset{\hphantom{\text{something}}}{=}g(x)\\
    &\overset{\text{something}}{=} h(x)
\end{align*}

Better way
\begin{alignat*}{2}
f(x) &= g(x) \\
     &= h(x) &&\qquad\text{(something)}
\end{alignat*}
\end{document}

Bildbeschreibung hier eingeben

Antwort4

Hier ist eine Version mit \stackon. Der Übersatzabstand wird mit dem optionalen Argument auf 2pt eingestellt. Der Text wurde in gesetzt \scriptsize.

\documentclass{article}
%\usepackage[T1]{fontenc}
%\usepackage[utf8]{inputenc}
%\usepackage[italian]{babel}
\usepackage{amsmath,stackengine}
\stackMath
\begin{document}
\begin{align*}
f(x)&\stackon{=}{\phantom{\text{\scriptsize something}}}g(x)\\
    &\stackon[2pt]{=}{\text{\scriptsize something}} h(x)
\end{align*}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen