类似定理的定义,不需要每次都使用 upshape

类似定理的定义,不需要每次都使用 upshape

如何才能用默认的斜体字体来表示定理和引理,而用直立字体来表示定义和例子,而不必\upshape在每个定义和例子中都键入命令?我使用以下序言:

\makeatletter
\def\@begintheorem#1#2{\trivlist
%   \item[\hskip \labelsep{\bfseries #1\ #2}]\itshape}
\item[\hskip \labelsep{\bfseries #2.\ #1:}]\itshape}
\makeatother

\newtheorem{Lemma}{Theorem}[chapter]
\newtheorem{Theorem}[Lemma]{Theorem}
\newtheorem{Example}[Lemma]{Example}
\newtheorem{Definition}[Lemma]{Definition}

以下代码有效:

\begin{Definition} \upshape 
Here's the definition. 
\end{Definition}

但是每次定义或示例时都需要输入\upshape。是否可以修改序言,这样我就不必\upshape每次都输入了?

答案1

一种可能的方法是使用 »阿姆斯特丹« …

\documentclass[11pt]{report}
\usepackage[T1]{fontenc}
\usepackage{amsthm}

\newtheorem{Lemma}{Theorem}[chapter]
\newtheorem{Theorem}[Lemma]{Theorem}
\theoremstyle{definition}
\newtheorem{Definition}[Lemma]{Definition}
\newtheorem{Example}[Lemma]{Example}

\begin{document}
  \chapter{Foo}
    \begin{Lemma}
      Lemma body
    \end{Lemma}

    \begin{Theorem}
      Theorem body
    \end{Theorem}

    \begin{Definition}
      Definition body
    \end{Definition}

    \begin{Example}
      Example body
    \end{Example}
\end{document}

… 另一种方法是使用 »定理«。

\documentclass[11pt]{report}
\usepackage[T1]{fontenc}
\usepackage[standard]{ntheorem}

\begin{document}
  \chapter{Foo}
    \begin{Lemma}
      Lemma body
    \end{Lemma}

    \begin{Theorem}
      Theorem body
    \end{Theorem}

    \begin{Definition}
      Definition body
    \end{Definition}

    \begin{Example}
      Example body
    \end{Example}
\end{document}

输出几乎相同。定制显示在相应的手册中。

相关内容