我怎样才能修复这个过满的水平盒子?

我怎样才能修复这个过满的水平盒子?
\documentclass[10pt]{article}
\usepackage{chemfig}
\usepackage[margin=1.2in]{geometry}
\newcommand{\chem}{\setatomsep{2em}\chemfig}

\begin{document}

\begin{itemize}
\item[--] 1$^\circ$ Alcohol $\rightarrow$  Aldehyde\\
\centerline{\schemestart
\chem{R-C(-[2]OH)(-[6]H)-H} \arrow{0}[,0] \+ [O] \arrow \chem{R-[:30]C(=[2]O)-[:-30]H} \arrow{0}[,0] \+ H$_2$O
\schemestop}
\end{itemize}

\end{document}

以上内容给出:

Overfull \hbox (25.00003pt too wide) in paragraph

之前它可以工作,但是现在却不工作了,我该如何修复它?

答案1

\centerline{并不是真正的 latex 命令(它是 latex 格式,但只是从纯 TeX 中转义的)。它使框\hsize变宽,但不知道 latex 列表结构及其引入的缩进。因此,您的行太宽了 25pt,这将是列表项的左边距。只需将其删除\centerline并替换为\begin{center}...\end{center}

答案2

如果您确实想要,您可以重新定义命令\centerline以消除警告: \renewcommand{\centerline}[1]{\null\hfill#1\hfill\null}

\documentclass[10pt]{article}
\usepackage{chemfig}
\usepackage[margin=1.2in]{geometry}
\newcommand{\chem}{\setatomsep{2em}\chemfig}

\renewcommand{\centerline}[1]{\null\hfill#1\hfill\null}

\begin{document}
  \begin{itemize}
    \item[--] 1$^\circ$ Alcohol $\rightarrow$  Aldehyde\\
                \centerline{
                  \schemestart 
                  \chem{R-C(-[2]OH)(-[6]H)-H} \arrow{0}[,0] \+ [O] \arrow 
                  \chem{R-[:30]C(=[2]O)-[:-30]H} \arrow{0}[,0] \+ H$_2$O
                  \schemestop
                }
  \end{itemize}
\end{document}

输出

相关内容