如何\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}{}{}
第二个使用thmtools
和spacebelow
键:
\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}