Estoy trabajando en una presentación con beamer y uso el equation
entorno en dos casos:
- una línea con solo expresiones matemáticas, entre dos líneas de texto y centrada horizontalmente (prácticamente el caso estándar, consulte la primera ecuación en el MWE a continuación)
- algún párrafo de texto (fuera del entorno matemático) yuxtapuesto a una ecuación (como la segunda y tercera ecuaciones en el MWE a continuación)
Para lograr esto último, utilizo el minipage
medio ambiente. Solía usar el columns
entorno, pero es mucho más difícil sintonizar el tipo correcto de alineación visual.
La motivación para hacerlo es que el párrafo de texto dé una descripción o definición de la fórmula que aparece en su costado. Sin embargo, simplemente poner el texto y el \begin{equation}
[...] \end{equation}
en minipage
s adyacentes da como resultado un espacio intermedio que me parece feo y me gustaría llenar; más precisamente, me gustaría que el texto y la fórmula estuvieran más cerca uno del otro. otro cerca del centro de la diapositiva (consulte la diferencia entre la segunda y la tercera ecuaciones en el MWE a continuación).
Descubrí que esto se puede lograr poniendo el texto en un flushright
entorno y encerrando el equation
entorno en un fleqn
entorno (cargando elnccmath
paquete). nota que no quierotodolas ecuaciones se alinearán a la izquierda, por lo que no las usaré \usepackage[fleqn]{amsmath}
en el preámbulo (que, de todos modos, simplemente no funciona en Beamer ya que genera un error de conflicto de opciones) .
No estoy usando flalign
ni similares, ya que parecen no lograr el resultado deseado para ecuaciones de una sola línea, sino solo para funcionar cuando las ecuaciones en dos o más filas deben alinearse a la izquierda.
El problema:Todo funciona bien hasta que intento hacer referencias cruzadas de ecuaciones. De hecho, si le doy \label
a una ecuación dentro del fleqn
entorno e intento hacer referencia a ella en otro lugar con \ref{}
, esto último da como resultado un número que no es el mismo que se muestra cerca de la ecuación misma.
He visto varias respuestas a preguntas similares, pero muy pocas se refieren al proyector (de ahí el problema fleqn
) y ninguna resolvió mi problema.
¡Cualquier ayuda es bienvenida!
Aquí hay un 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}
Respuesta1
Un enfoque diferente usando el varwidth
paquete (esto centrará el bloque completo de texto+ecuación):
\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}
Si prefieres una minipágina de ancho fijo (esto centrará el borde izquierdo de la ecuación):
\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}