我正在尝试模仿如下格式的讲义:
我想格式化一个定理样式,产生与以下行相同的结果
- 反双曲函数。
在上面的 pdf 中。到目前为止,我一直在尝试使用 amsthm 包使其保持简单,因为我很难找到使用 ntheorem 或 thmtools 来做到这一点的方法。
我的第一次尝试是使用\swapnumbers
以下定理定义:
\documentclass[reqno,12pt]{article}
\usepackage{amsmath,amssymb,amsthm}
\swapnumbers
\newtheoremstyle{numberfirst}
{}
{}
{}
{}
{\bfseries}
{.}
{.5em}
%
{\thmnote{#3}}
\theoremstyle{numberfirst}
\newtheorem{varthm}{.}
\begin{document}
\begin{varthm}[The angle between vectors]
Let $\vec{u} = \langle {u_1, u_2} \rangle$ and $\vec{v} = \langle {v_1, v_2}
\rangle$ be two vectors in $\mathbb{R}^2$, and consider the triangle formed by
connecting the heads of $\vec{u}$ and $\vec{v}$. The third side of this triangle is
$\vec{u} - \vec{v}$.\footnote{We could also use $\vec{v} - \vec{u}$. Either will
suffice because we are only interested in its magnitude.} Let $\theta$ be the angle
between $\vec{u}$ and $\vec{v}$, opposite $\vec{u} - \vec{v}$.
\end{varthm}
\end{document}
另一个结果来自于注释掉\swapnumbers
,这实际上更接近我想要的,但现在编号消失了!
答案1
对我来说,您的 mwe 中的第一个缺陷是 的使用\newtheorem
。您正在使用\newtheorem{varthm}{.}
。但是,文档中解释的正确语法是:
\newtheorem{name}{Printed output}
所以你的句号是错误的。相关我认为正确的语法是
\newtheorem{varthm}{Varthm}
该命令\swapnumbers
(在文档中解释)将定理编号放在标题的开头而不是结尾。该命令仅影响常见的定理样式。
该命令\newtheoremstyle
是指定定理环境行为的合适方法。它有 9 个强制参数,其中最后一个参数指定标题。此时,重要的是要强调该命令\swapnumbers
禁用了第九个参数的声明\newtheoremstyle
。因此,根据您的需求,我建议避免\swapnumbers
使用第九个参数:
\newtheoremstyle{numberfirst}
{}%space above
{}%space below
{}%body font
{}%Indent amount
{\bfseries}%Theorem head font
{}%Punctuation after theorem head
{.5em}%Space after theorem head
{#2.~\thmnote{#3}}%Theorem head spec
\theoremstyle{numberfirst}
\newtheorem{varthm}{Varthm}