Я работаю над презентацией с помощью проектора и использую эту equation
среду в двух случаях:
- строка, содержащая только математические выражения, расположенная между двумя строками текста и отцентрированная по горизонтали (практически стандартный случай, см. первое уравнение в MWE ниже)
- некоторый текстовый абзац (вне математической среды), сопоставленный с уравнением (например, второе и третье уравнения в MWE ниже)
Чтобы достичь последнего, я использую minipage
среду. Я использовал среду columns
, но гораздо сложнее настроиться на правильный вид визуального выравнивания.
Мотивация для этого заключается в том, что текстовый абзац дает описание или определение формулы, появляющейся сбоку. Однако простое размещение текста и \begin{equation}
[...] \end{equation}
в соседних minipage
s приводит к образованию пробела между ними, который я нахожу некрасивым и хотел бы заполнить — точнее, я хотел бы, чтобы текст и формула были ближе друг к другу около центра слайда (см. разницу между вторым и третьим уравнениями в MWE ниже).
Я обнаружил, что этого можно добиться, поместив текст в flushright
окружение и заключив equation
окружение в fleqn
окружение (загрузив nccmath
пакет). Обратите внимание, что я не хочувсеуравнения должны быть выровнены по левому краю, поэтому я не использую их \usepackage[fleqn]{amsmath}
в преамбуле (которая, в любом случае, просто не работает в Beamer, так как вызывает ошибку конфликта опций) .
Я не использую flalign
или подобные, поскольку они, по-видимому, не позволяют достичь желаемого результата для однострочных уравнений, а работают только тогда, когда уравнения в двух или более строках необходимо выровнять по левому краю.
Проблема:Все работает отлично, пока я не попробую сделать перекрестные ссылки на уравнения. Действительно, если я дам \label
уравнению внутри fleqn
среды и попытаюсь сослаться на него где-то еще с помощью \ref{}
, последнее приведет к тому, что число, отображаемое рядом с самим уравнением, будет отличаться от указанного.
Я видел несколько ответов на похожие вопросы, но лишь немногие из них касались проектора (отсюда и проблема с fleqn
), и ни один из них не решил мою проблему.
Любая помощь будет очень кстати!
Вот MWE:
\documentclass[aspectratio=169]{beamer}
\usetheme{Antibes}
\usepackage{nccmath}
\begin{document}
\begin{frame}[fragile]
An equation outside of the \verb|fleqn| environment. I give it the label: \verb|\label{eq1}|.
\begin{equation}\label{eq1}
F = ma
\end{equation}
\begin{minipage}{0.5\linewidth}
\begin{flushright}
Text on the side equation in \verb|fleqn| \\
(the equation has label: \verb|\label{eq2}|)
\end{flushright}
\end{minipage}
\hspace{0.5em}
\begin{minipage}{0.45\linewidth}
\begin{fleqn}
\begin{equation}\label{eq2}
\delta q = {\rm d}u + P\,{\rm d}v
\end{equation}
\end{fleqn}
\end{minipage}\\
\vspace{1.5em}
\begin{minipage}{0.5\linewidth}
\begin{flushright}
Text on the side equation without \verb|fleqn| \\
(the equation has label: \verb|\label{eq3}|)
\end{flushright}
\end{minipage}
\hspace{1em}
\begin{minipage}{0.45\linewidth}
\begin{equation}\label{eq3}
\frac{\partial\rho}{\partial t} + \nabla\cdot\left(\rho\vec{v}\right) = 0
\end{equation}
\end{minipage}\\
\vspace{1em}
Note, in the latter case, the space between text and equation, that I'd like to fill.
\begin{itemize}
\item Here I reference the first equation, using \verb|\ref{eq1}|: Eq.~\ref{eq1}.
\item Here I reference the second equation, using \verb|\ref{eq2}|: Eq.~\ref{eq2}.
\item Here I reference the third equation, using \verb|\ref{eq3}|: Eq.~\ref{eq3}.
\end{itemize}
\end{frame}
\end{document}
решение1
Другой подход с использованием varwidth
пакета (это позволит отцентрировать весь блок текста+уравнение):
\documentclass[aspectratio=169]{beamer}
\usetheme{Antibes}
\usepackage{varwidth}
\begin{document}
\begin{frame}[fragile]
An equation outside of the \verb|fleqn| environment. I give it the label: \verb|\label{eq1}|.
\begin{equation}\label{eq1}
F = ma
\end{equation}
\begin{equation}
\text{\begin{varwidth}{.4\textwidth}
\raggedleft
Text on the side equation in \\
(the equation has label: )
\end{varwidth}\quad
}
\delta q = {\rm d}u + P\,{\rm d}v
\label{eq2}
\end{equation}
Note, in the latter case, the space between text and equation, that I'd like to fill.
\begin{itemize}
\item Here I reference the first equation, using \verb|\ref{eq1}|: Eq.~\ref{eq1}.
\item Here I reference the second equation, using \verb|\ref{eq2}|: Eq.~\ref{eq2}.
\end{itemize}
\end{frame}
\end{document}
Если вы предпочитаете мини-страницу фиксированной ширины (это позволит отцентрировать левый край уравнения):
\documentclass[aspectratio=169]{beamer}
\usetheme{Antibes}
\begin{document}
\begin{frame}[fragile]
An equation outside of the \verb|fleqn| environment. I give it the label: \verb|\label{eq1}|.
\begin{equation}\label{eq1}
F = ma
\end{equation}
\begin{equation}
\text{\begin{minipage}{.48\textwidth}
\raggedleft
Text on the side equation in \\
(the equation has label: )
\end{minipage}\quad
}
\delta q = {\rm d}u + P\,{\rm d}v
\hskip \textwidth minus \textwidth
\label{eq2}
\end{equation}
Note, in the latter case, the space between text and equation, that I'd like to fill.
\begin{itemize}
\item Here I reference the first equation, using \verb|\ref{eq1}|: Eq.~\ref{eq1}.
\item Here I reference the second equation, using \verb|\ref{eq2}|: Eq.~\ref{eq2}.
\end{itemize}
\end{frame}
\end{document}