章节开头的摘要命令更加经济、强大

章节开头的摘要命令更加经济、强大

我想在每一章的开头放一个摘要。为了这个目的,我设计了一个命令,但它看起来既不经济,也不健壮(有时会向右移动)。如何改进这个命令?

我的命令是:

\def\chapstract#1{%
  \medskip%
  \begingroup%
    \itshape\small\noindent%
    \parbox{\linewidth}{%
      \leftskip=1em%
      \rightskip=1em% 
      #1%
    }%
  \endgroup%
  \medskip%
}

答案1

你没有给出太多关于所需布局的指示,但也许

\def\chapstract#1{\begin{quote}\small\itshape#1\end{quote}}

\leftskip\rightskip是 TeX 基元,不应直接在 LaTeX 中设置。(quote环境使用 LaTeX 列表机制以安全的方式设置它们)。

quote标准类中的完整定义是

 \newenvironment{quote}
               {\list{}{\rightmargin\leftmargin}%
                \item\relax}
               {\endlist}

这表示隐式地将左侧缩进默认量,并将右侧缩进与左侧相同的量。因此,如果您在评论中指出您想要不同的缩进,则使用chapastractenv而不是quote并将其定义为

\newenvironment{chapabstractenv}
               {\list{}{%
                  \small\itshape\setlength\leftmargin{3cm}%
                  \rightmargin\leftmargin}%
                \item\relax}
               {\endlist}

那么如果你想要一个命令形式而不是使用环境

   \def\chapstract#1{\begin{chapabstractenv}#1\end{chapabstractenv}}

答案2

谢谢你的帮助,我想我会像这样修改引用环境:

\makeatletter 
\newenvironment{chapstract}{\list{}{ % 
\leftmargin1pc \listparindent\normalparindent 
\itemindent\z@ 
\rightmargin\leftmargin \parsep\z@ \@plus\p@}% 
\item[]% 
\itshape\small
}{% 
\endlist 
} 
\makeatother

这虽然不是更经济,但似乎更正确。

相关内容