为什么 \restoregeometry 不能正确对齐枚举环境?

为什么 \restoregeometry 不能正确对齐枚举环境?

你能告诉我为什么使用后子枚举环境没有水平对齐吗\restoregeometry

\documentclass{article}
\usepackage{geometry, lipsum}

\begin{document}
\begin{enumerate}
\item 
\newgeometry{} \restoregeometry
\item \lipsum[1]
\begin{enumerate}
\item \lipsum[2] %Why is the right hand side of this paragraph not horizontally aligned with the rest of the text?
\end{enumerate}
\item \lipsum[3]
\end{enumerate}
\end{document}

列举不结盟

答案1

\newgeometry 将 \linewidth 重置为默认的 \textwidth。您可以像这样将其重置为列表的正确值。

\documentclass{article}
\usepackage{geometry}
\usepackage{lipsum}

\begin{document}
\begin{enumerate}
\item aa
 \newgeometry{} \restoregeometry
 \advance\linewidth -\rightmargin
 \advance\linewidth -\leftmargin
\item \lipsum[1]
\begin{enumerate}
\item \lipsum[2] %Why is the right hand side of this paragraph not horizontally aligned with the rest of the text?
\end{enumerate}
\item \lipsum[3]
\end{enumerate}
\end{document}

但总体来说,最好不要在环境中使用 \newgeometry。它并不期望这一点。

答案2

我找到了一个解决方案:

\documentclass{article}
\usepackage{geometry, lipsum}

\begin{document}
\begin{enumerate}
\item 
\end{enumerate}
\newgeometry{} \restoregeometry
\begin{enumerate} \setcounter{enumi}{1}
\item \lipsum[1]
\begin{enumerate}
\item \lipsum[2]
\end{enumerate}
\item \lipsum[3]
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容