\overset および align 環境: 正しい配置を取得するにはどうすればよいでしょうか?

\overset および align 環境: 正しい配置を取得するにはどうすればよいでしょうか?

私はalign環境をコマンドと一緒に使用して\overset、関係記号の上にテキストを配置しています。これが私の 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}

そして出力は

間違った配置

ご覧のとおり、配置が間違っています。少なくとも、私が望んでいるものではありません。2 つの等号を互いに揃えたいのですが、私のコードでは、最初の等号が記号の上のテキストの先頭に揃えられています。

私はすでに試しました

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

そして

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

しかし、どちらの解決策もエラーが発生しました。

正しい位置合わせをするにはどうすればいいでしょうか?

編集: 元の質問は についてでした\buildrelが、@egreg がコメントで述べたように、このコマンドは LaTeX ではサポートされていないため、 に置き換えました\overset

答え1

aligned-oversetパッケージはこれに対する簡単な解決策を提供します。

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

対応する出力

答え2

\stackrel{<stack>}{<relation>}私は( のような類似のもの\overset)を使って関係の上に何かを積み重ね、mathtools\mathclap。適切な を使用することで、スペースの修正に対応できます\hspace

ここに画像の説明を入力してください

\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}

ただし、シンボルに長いフレーズを記述するのは避けてください。代わりに、関係を表す新しいシンボルを定義することができます。

答え3

\buildrelは LaTeX でサポートされていないコマンドなので使用しないでください\overset

ファントムを使用してアライメントを取得できますが、私の意見では、副次的な条件を追加する方が良いでしょう。

\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}

ここに画像の説明を入力してください

答え4

以下は を使用したバージョンです\stackon。オーバーセットギャップは、オプションの引数を使用して 2pt に設定されています。テキストは に設定されています\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}

ここに画像の説明を入力してください

関連情報