定理样式,带有换行符和不同括号的标题

定理样式,带有换行符和不同括号的标题

我想定义一个定理样式,其中有一个换行符和不同的符号作为定理标题(没有括号 () )。如下例所示:

图形示例

\documentclass[10pt,a4paper]{article}
\newtheorem{mytheo}{Theorem Title}

\begin{document}
    \begin{mytheo}[Theorem]
        Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod.
    \end{mytheo}
\end{document}

此代码产生:

Latex 代码生成此

我如何扩展定理定义以便在定理标题后有一个换行符并且标题周围有“<” ">”符号而不是“(” “)”?

编辑

  1. 已添加工作示例。
  2. 我希望编译后的文档中的标题[Theorem]为 而不是 (Theorem) 并且在标题后有一个换行符

答案1

标准内核\newtheorem有点太基础了。我建议你使用 或amsthm(ntheorem目前为止,处理定理类结构的最流行的软件包)。

以下是使用新定理样式实现所需格式的一种方法,该定理样式使用amsthm包(在评论中要求将正文用斜体表示):

在此处输入图片描述

代码:

\documentclass[10pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsthm}
\usepackage{textcomp}

\newtheoremstyle{angularbreak}
  {\topsep}
  {\topsep}
  {\normalfont\itshape}
  {0pt}
  {\bfseries}
  {}
  {\newline}
  {\thmname{#1}~\thmnumber{#2}\thmnote{ \textlangle#3\textrangle}}
\theoremstyle{angularbreak}  
\newtheorem{mytheo}{Theorem}

\begin{document}

\begin{mytheo}[Fundamental Theorem of Algebra]
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod.
\end{mytheo}

\end{document}

如果你决定选择ntheorem

\documentclass[10pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{ntheorem}
\usepackage{textcomp}

\makeatletter
\newtheoremstyle{angularbreak}
  {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
##1\ ##2\theorem@separator}\hbox{\strut}}}]}%
  {\item[\rlap{\vbox{\hbox{\hskip\labelsep \theorem@headerfont
##1\ ##2\ \textlangle##3\textrangle\theorem@separator}\hbox{\strut}}}]}
\makeatother
\theoremstyle{angularbreak}
\theorembodyfont{\itshape}
\newtheorem{mytheo}{Theorem}

\begin{document}

\begin{mytheo}[Fundamental Theorem of Algebra]
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod.
\end{mytheo}

\end{document}

这也是同样的想法thmtools作为前端amsthm(现在用户界面更加友好):

\documentclass[10pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{textcomp}

\declaretheoremstyle[
  spaceabove=\topsep, 
  spacebelow=\topsep,
  headfont=\normalfont\bfseries,
  notefont=\bfseries, 
  notebraces={\textlangle}{\textrangle},
  bodyfont=\normalfont\itshape,
  postheadspace=\newline,
  headpunct={},
]{angularbreak}
\declaretheorem[style=angularbreak,name=Theorem]{mytheo}

\begin{document}

\begin{mytheo}[Fundamental Theorem of Algebra]
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod.
\end{mytheo}

\end{document}

结果:

在此处输入图片描述

相关内容