如何使用 amsthm 和 article 类从定理中的 \cite[]{} 中获取非斜体文本?

如何使用 amsthm 和 article 类从定理中的 \cite[]{} 中获取非斜体文本?

我有一个 tex 文件:

\documentclass[11pt]{amsart}
\usepackage{amssymb,amsthm,enumitem,mathtools,fullpage,microtype}
\usepackage[hypertexnames=false]{hyperref}
\hypersetup{
  colorlinks=true,
  linkcolor=blue,
  filecolor=blue,
  urlcolor=red,
  citecolor=magenta
}
\usepackage[noabbrev,capitalize,nameinlink]{cleveref}
\usepackage{autonum}

\numberwithin{equation}{section}
\newtheorem{theorem}{Theorem}[section]
\theoremstyle{definition}
\newtheorem{assumption}[theorem]{Assumption}

\newcommand{\RR}{\mathbb{R}}
\newcommand{\TT}{\mathbb{T}}
\setlist{font=\normalfont}

\begin{document}

\section{Introduction}

\begin{assumption} \label{main_assmpt1}
There exist constants $C>0, \alpha \in (0, 1), \beta \in (0, 1)$ such that for $t \in \TT$ and $x, y \in \RR^d$:
\begin{enumerate}[label=(A\arabic*)]
\item $\nu$ has a density $\ell_\nu \in C^\alpha_b (\RR^d)$.
\item $a_t$ is invertible.
\end{enumerate}
\end{assumption}

\begin{theorem}
Let \cref{main_assmpt1} hold.
\begin{enumerate}
\item \cite[Theorem 2.1]{mckean1966class} ...
\end{enumerate}
\end{theorem}

\begin{thebibliography}{10}
\bibitem{mckean1966class}
Henry~P McKean~Jr.
\newblock A class of markov processes associated with nonlinear parabolic
  equations.
\newblock {\em Proceedings of the National Academy of Sciences},
  56(6):1907--1911, 1966.
\end{thebibliography}
\end{document}

我特别喜欢非斜体引用的定理名称:

在此处输入图片描述

当我从 更改为 时\documentclass[11pt]{amsart}\documentclass[11pt]{article}我失去了这种理想的外观:

在此处输入图片描述

您能解释一下如何在课堂上保持这种美学特征article吗?

答案1

amsart用途:

\def\@citestyle{\m@th\upshape\mdseries}
\let\citeform\@firstofone
\def\@cite#1#2{{%
  \@citestyle[\citeform{#1}\if@tempswa, #2\fi]}}

明确设置 cites \upshape。默认的 LaTeX cite 命令不会执行此类操作。LaTeX\@cite的默认定义是:

\def\@cite#1#2{[{#1\if@tempswa , #2\fi}]}

因此,在定理内部,定理主体字体也用于引用。但您可以通过复制代码来重新定义它amsart

\documentclass[11pt]{article}
\usepackage{amsthm}
\usepackage{amssymb,enumitem,mathtools,fullpage,microtype}
\usepackage[hypertexnames=false]{hyperref}
\hypersetup{
  colorlinks=true,
  linkcolor=blue,
  filecolor=blue,
  urlcolor=red,
  citecolor=magenta
}
\usepackage[noabbrev,capitalize,nameinlink]{cleveref}
\usepackage{autonum}
\newcommand{\RR}{\mathbb{R}}
\newcommand{\TT}{\mathbb{T}}
\setlist{font=\normalfont}

\numberwithin{equation}{section}
\newtheorem{theorem}{Theorem}[section]
\theoremstyle{definition}
\newtheorem{assumption}[theorem]{Assumption}

\makeatletter
\def\@citestyle{\m@th\upshape\mdseries}
\let\citeform\@firstofone
\def\@cite#1#2{{%
  \@citestyle[\citeform{#1}\if@tempswa, #2\fi]}}
\makeatother

\begin{document}

\section{Introduction}

\begin{assumption} \label{main_assmpt1}
There exist constants $C>0, \alpha \in (0, 1), \beta \in (0, 1)$ such that for $t \in \TT$ and $x, y \in \RR^d$:
\begin{enumerate}[label=(A\arabic*)]
\item $\nu$ has a density $\ell_\nu \in C^\alpha_b (\RR^d)$.
\item $a_t$ is invertible.
\end{enumerate}
\end{assumption}

\begin{theorem}
Let \cref{main_assmpt1} hold.
\begin{enumerate}
\item \cite[Theorem 2.1]{mckean1966class} ...
\end{enumerate}
\end{theorem}

\begin{thebibliography}{10}
\bibitem{mckean1966class}
Henry~P McKean~Jr.
\newblock A class of markov processes associated with nonlinear parabolic
  equations.
\newblock {\em Proceedings of the National Academy of Sciences},
56(6):1907--1911, 1966.
\end{thebibliography}
\end{document}

在此处输入图片描述

笔记:

  • 如果您确实手动制作参考书目,则上述代码有效。如果您使用类似 的包biblatex,请参阅该包的手册以获取有关引用格式的更多信息。是的,我建议使用这样的包,即biblatex

  • 如果不仅希望引用而且希望定理主体的其余部分不使用斜体,则应该使用\newtheoremstyle定义相应的样式,或者使用,例如\theoremstyle{definition}

  • 例如,如果你使用,natbib你可以改用类似 的内容\bibpunct{\upshape\mdseries[}{]}{,}{n}{}{,}natbib有关 的更多信息,请参阅手册\bibpunct

相关内容