如何在定理后自动插入一个小跳跃

如何在定理后自动插入一个小跳跃

如何\smallskip在定理/引理后自动插入?例如:

\documentclass[11pt]{extarticle}
\usepackage[left=3cm,right=3cm,top=2cm,bottom=2cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\newtheorem{lemma}{Lemma}[section]

\begin{document}

\begin{lemma}
    Some Lemma
\end{lemma}
\smallskip % this automatically
Some text
\end{document}

答案1

我删除了手册\smallskip并添加了以下两行:

\let\svendlemma\endlemma
\def\endlemma{\svendlemma\smallskip}

这是 MWE

\documentclass[11pt]{extarticle}
\usepackage[left=3cm,right=3cm,top=2cm,bottom=2cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\newtheorem{lemma}{Lemma}[section]
\let\svendlemma\endlemma
\def\endlemma{\svendlemma\smallskip}
\begin{document}

\begin{lemma}
    Some Lemma
\end{lemma}
%\smallskip % this automatically
xxx
\end{document}

答案2

第一种方法是使用etoolbox

\usepackage{etoolbox}
  \apptocmd{\endlemma}{\smallskip}{}{}

第二个使用thmtoolsspacebelow键:

\usepackage{thmtools}
  \declaretheoremstyle[
    numberwithin=section,
    spacebelow=12pt,
    spaceabove=12pt,
    bodyfont=\itshape]{mystyle}
  \declaretheorem[style=mystyle]{Lemma}

以下是同时采用这两种方法的 MWE:

\documentclass[11pt]{extarticle}
\usepackage[left=3cm,right=3cm,top=2cm,bottom=2cm]{geometry}
\usepackage{amsmath}

\usepackage{amsthm}
  \newtheorem{lemma}{Lemma}[section]

\usepackage{etoolbox}
  \apptocmd{\endlemma}{\smallskip}{}{}

\usepackage{thmtools}
  \declaretheoremstyle[
    numberwithin=section,
    spacebelow=12pt,
    spaceabove=12pt,
    bodyfont=\itshape]{mystyle}
  \declaretheorem[style=mystyle]{Lemma}
  \declaretheorem[style=mystyle]{Definition}

\begin{document}

\section{First solution}

\begin{lemma}
    Some Lemma
\end{lemma}

Hello world!

\begin{lemma}
    Some Lemma
\end{lemma}

Hello world!

\section{Second solution}

\begin{Lemma}
    Some Lemma
\end{Lemma}

Hello world!

\begin{Lemma}
    Some Lemma
\end{Lemma}

Hello world!

\end{document}

在此处输入图片描述

相关内容