![全局强调定理名称](https://linux22.com/image/285259/%E5%85%A8%E5%B1%80%E5%BC%BA%E8%B0%83%E5%AE%9A%E7%90%86%E5%90%8D%E7%A7%B0.png)
我想全局定义theorem
环境,以便强调其名称(如下ABC
例所示)(\textit
或者\textbf
),我该怎么做?
我知道我可以一个接一个地完成,但全局定义它会更方便。
\begin{theorem}[ABC]
\end{theorem}
答案1
如果您正在使用amsthm
,则可以使用声明新的定理样式\newtheoremstyle
:
\documentclass{article}
\usepackage{amsthm}
\newtheoremstyle{mystyle}
{\topsep}%
{\topsep}%
{\itshape}%
{}%
{\bfseries}
{.}
{.5em}%
{\thmname{#1}~\thmnumber{#2}\thmnote{ (#3)}}%
\theoremstyle{mystyle}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}[ABC]
test
\end{theorem}
\end{document}
另一个选择是使用thmtools
amsthm
包作为或的前端ntheorem
:
\documentclass{article}
\usepackage{amsthm}
\usepackage{thmtools}
\declaretheoremstyle[notefont=\bfseries,bodyfont=\itshape]{mystyle}
\declaretheorem[style=mystyle]{theorem}
\begin{document}
\begin{theorem}[ABC]
test
\end{theorem}
\end{document}
我使用\bfseries
了注释字体,但\itshape
如果你喜欢斜体,你也可以使用,
答案2
使用该ntheorem
包,您可以使用theoremstyle
描述总体布局的,并指定字体特征、编号、边距位置、分隔符、结束定理标记等。规范对所有随后声明的“新定理”有效,直到另一个规范取代它。您可以使用包自己的语法或借助包来定义新的定理样式mathtools
。
有 9 种预定义定理样式:plain、break、change、margin、change break、marginbreak、nonumberplain、nonumberbreak 和 empty。也可以使用框架或阴影定理
以下是一个例子,仅展示它是如何工作的:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath} % Or mathtools
\usepackage[thref,amsmath,endmarks]{ntheorem}
\theoremstyle{plain}
\theoremheaderfont{\bfseries}
\theorembodyfont{\itshape}
\theoremseparator{.}
\newtheorem{Thm}{Theorem}
\newtheorem{Prop}{Proposition}
\theoremheaderfont{\scshape\upshape}
\theorembodyfont{\upshape}
\newtheorem{Def}{Definition}
\theoremstyle{break}
\theoremseparator{:}
\newtheorem{Example}{Example}
\theoremstyle{nonumberplain}
\theoremsymbol{\square}
\newtheorem{Proof}{Proof}
\begin{document}
...................................