我需要使用 Springer 的 svjour3
as\documentclass
和 这会导致编号不好看:使用\newtheorem{mytheorem}{Theorem}[section]
和\begin{mytheorem}
这会产生像 11、12、21、22 这样的数字 - 章节编号和定理编号之间没有点。我(和裁判)希望使用像 1.1、1.2、2.1、2.2 这样的数字。
llncs
报告了与该课程完全相同的问题在这个问题中但是那里给出的解决方案 - 使用\spnewtheorem
而不是\newtheorem
- 不起作用(错误:“缺失\begin{document}
”)
这是一个最小的工作示例:
\documentclass{svjour3}
\usepackage{amsmath}
\newtheorem{mytheorem}{Theorem}[section]
\begin{document}
\section{foo}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\section{bar}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\end{document}
我不知道文档类有多常见,但这里是类文件由 Springer 提供
答案1
您需要设置envcountsect
为 true 并使用\spnewtheorem
\documentclass[envcountsect]{svjour3} % <<<<<<<<<<<<<<<<<<<
\usepackage{amsmath}
\spnewtheorem{mytheorem}{Theorem}[section]{\bfseries}{\itshape}
\begin{document}
\section{foo}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\section{bar}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\end{document}
答案2
通过以下方式重置编号以满足您的需求
\renewcommand{\themytheorem}{\thesection.\arabic{mytheorem}}
\documentclass{svjour3}
\usepackage{amsmath}
\newtheorem{mytheorem}{Theorem}[section]
\renewcommand{\themytheorem}{\thesection.\arabic{mytheorem}}
\begin{document}
\section{foo}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\section{bar}
\begin{mytheorem}
\end{mytheorem}
\begin{theorem}
\end{theorem}
\end{document}