Можно ли добиться того, чтобы несколько строк уравнений были выровнены по центру, но текстовые аннотации справа не оказывали влияния на центрирование?
Вместо:
E = mc^2 Famous Equation by Einstein
a^2 + b^2 = c^2 Pythagoras
Пусть это будет что-то вроде:
E = mc^2 Famous Equation by Einstein
a^2 + b^2 = c^2 Pythagoras
Когда я использую gather или аналогичные многострочные среды, наличие в них команды \text влияет на центрирование всей строки, а размещение текста за пределами этих сред помещает текст на новую строку.
Я также пробовал реализовать текст в виде тегов в среде сборки, это близко к результату, но для «правильного» отображения требуются очень большие поля страницы из-за некоторых строгих требований к интервалам.
решение1
решение2
Вот одна из возможностей. Обратите внимание, что текст справа также выровнен.
Ширина (4em) составляетнетважно, чтобы оно было одинаковым в каждой строке и не допускало наложения текста на математику.
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{align*}
& \mathmakebox[4em][c]{E=mc^2} && \text{Famous Equation by Einstein}\\
& \mathmakebox[4em][c]{a^2 + b^2 = c^2} && \text{Pythagoras}
\end{align*}
\end{document}
решение3
\documentclass{article}
\usepackage{amsmath}
\usepackage{tabularray}
\begin{document}
\begin{equation}
\begin{tblr}{colspec={Q[c,m]Q[l,m]},column{2}={cmd=\text}}
E = mc^2 & Famous Equation by Einstein \\
a^2 + b^2 = c^2 & Pythagoras \\
\end{tblr}
\end{equation}
\begin{equation}
\begin{tblr}{colspec={Q[c,m]Q[l,m]},column{2}={cmd=\text,leftsep=40pt}}
E = mc^2 & Famous Equation by Einstein \\
a^2 + b^2 = c^2 & Pythagoras \\
\end{tblr}
\end{equation}
\end{document}
решение4
Я бы выровнял аннотации, как в ответах других, но поскольку это не то, о чем вы просили, и автор вопроса не согласен...:)
Если вам нужны аннотации без смещения центрированных уравнений, просто добавьте текст, но не горизонтальный пробел ( например, \rlap
или a \makebox
из ).0pt
Предполагая, что вы также хотите избежать выхода длинных аннотаций за пределы поля, вы можете использовать \parbox
для оставшегося пространства (вычисляется с помощью linegoal
пакета. Внимание: для этого требуетсядва(1+1=2) сборника).
Предполагая также, что вы хотите разместить уравнения, выровненные между собой, но не по центру страницы, чтобы освободить место для аннотаций, вы можете добавить отрицание \hspace
в режиме отображения (устанавливается методом проб и ошибок, одинаково для каждого уравнения) или использовать массив в режиме inline (чтобы массив не был центрирован). MWE показал второй случай:
\documentclass[a5paper]{article}
\usepackage{geometry}
\usepackage{lipsum,parskip}
\usepackage{linegoal,array}
\newcommand\eqnote[2]{#1\rlap{\hspace{1cm}\parbox{\linegoal}{\raggedright #2}}}
%\setlength\extrarowheight{1ex}
\renewcommand{\arraystretch}{3}
\parskip1em
\begin{document}
\lipsum[1][1-3]
\noindent\(
\begin{array}{@{}c@{}}
\eqnote{E=mc^2}{Famous Equation by Einstein}\\
\eqnote{a^2 + b^2 = c^2}{Pythagoras}\\
\eqnote{i\hbar\frac{\partial}{\partial t} \Psi(x,t) = \left [ - \frac{\hbar^2}{2m}\frac{\partial^2}{\partial x^2} + V(x,t)\right ] \Psi(x,t).}{Schrödinger Wave Equation}\\
\eqnote{1 + 1 = 11}{Alternative maths in a unary numeral system.}\\
\eqnote{1=1}{\lipsum[3][1-1]}\\
\eqnote{1+1+1=1+1+1}{\lipsum[3][1-1]}\\
\eqnote{1+1+1+1+1+1=1+1+1+1+1+1}{\lipsum[3][1-1]}\\
\end{array}
\)
\lipsum[2][1-3]
\end{document}