如何在类似定理的环境中改变头部后的垂直空间

如何在类似定理的环境中改变头部后的垂直空间

在定义样式或声明“定理”时,是否有可能改变垂直的头部后的间距(不是在整个“定理”之后)?

我想在序言中使用适当的设置来做到这一点,并且不是每次我调用环境时。(显然我每次调用环境时都可以手动执行此操作。)

在 的文档中thmtools,我没有找到针对\declaretheoremstyle或执行此操作的密钥\declaretheorem

例子:

\documentclass{article}

\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{kantlipsum}

\declaretheoremstyle[
headfont=\bfseries, headpunct={}, numbered=no,
spaceabove=3\topsep, postheadspace=2em
]{exercs}

\declaretheorem[name=EXERCISES,style=exercs]{problems}

\begin{document}

\kant[1]

\begin{problems}

Solve these problems.

\begin{enumerate}
\item Do this one first.
\item Solve this next.
\end{enumerate}

\end{problems}

\end{document}

我确实非常喜欢使用thmtools包装方法来设计并声明类似定理的环境,因为它似乎比amsthm单独使用能更好地控制它们。

尽管如此,即使是“原始的”“amsthm”方法,例如在定理样式;在定理标题和定理主体之间留出垂直空间,仅仅移动“定理”主体的开头以便从新行开始;它似乎不允许我添加额外的垂直空间:

\documentclass{article}

\usepackage{amsthm}
\usepackage{kantlipsum}

\newtheoremstyle{exercises}% name
{\topsep}%Space above
{\topsep}%Space below
{\itshape}%Body font
{0pt}%Indent amount
{\bfseries}% Theorem head font
{}%Punctuation after theorem head
{\newline}%Space after theorem head
{}% theorem head specification

\theoremstyle{exercises}
\newtheorem{problems}{EXERCISES}

\begin{document}

\kant[1]

\begin{problems}

Solve these.

\begin{enumerate}
\item Do this one first.
\item Solve this next.
\end{enumerate}

\end{problems}

\end{document}

答案1

这里你可以看到:将换行符视为标点符号就足够了:

\documentclass{article}

\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{kantlipsum}

\declaretheoremstyle[
headfont=\bfseries,%
headpunct={\vspace{\topsep}\newline}, %
numbered=no,
spaceabove=3\topsep, %
postheadspace=0 pt ]{exercs}

\declaretheorem[name=EXERCISES,style=exercs]{problems}

\begin{document}

\kant[1]

\begin{problems}

Solve these problems.

\begin{enumerate}
\item Do this one first.
\item Solve this next.
\end{enumerate}

\end{problems}

\end{document} 

在此处输入图片描述

相关内容