我正在编写一个包含一些定理、引理和命题的大型文档。目前,我正在使用包amsmath
和amsthm
。我通过添加来定义我自己的定理环境
\theoremstyle{plain}
\newtheorem{thm} {Theorem}[chapter]
序言部分。但是,我对外观不太满意。那么是否有可能改变显示方式?我希望“定理”一词出现在小帽子。此外,我希望在定理的标题后面有一个换行符。
最好的方法是什么?是否有适合此目的的软件包(最好没有太多麻烦)?
答案1
amsthm
提供\newtheoremstyle
定义新定理样式的命令。它在amsthm
文档plain
。要获得与标题字体相同的样式,您可以使用
\newtheoremstyle{mytheoremstyle} % name
{\topsep} % Space above
{\topsep} % Space below
{\itshape} % Body font
{} % Indent amount
{\scshape} % Theorem head font
{.} % Punctuation after theorem head
{.5em} % Space after theorem head
{} % Theorem head spec (can be left empty, meaning ‘normal’)
\theoremstyle{mytheoremstyle}
\newtheorem{thm}{Theorem}
这ntheorem
该包提供了更大的灵活性(正如查尔斯所暗示的那样)。
答案2
您还可以使用thmtools
包提供了一个键值接口来定义新的定理样式和定理。(该包充当amsthm
和ntheorem
包的前端,其中一个应该在之前加载thmtools
。)
\documentclass{article}
\usepackage{amsthm}
\usepackage{thmtools}
\declaretheoremstyle[headfont=\scshape,postheadspace=\newline]{mystyle}
\declaretheorem[style=mystyle]{theorem}
\begin{document}
\begin{theorem}
Some text.
\end{theorem}
\end{document}
答案3
尝试
\usepackage[amsthm]{ntheorem} \newcommand{\theoremheaderfont}{\scshape}
(使用ntheorem
代替amsthm
)。