因此,我对定理、引理等有以下风格。
\newtheoremstyle{Fancyplain}
{\topsep}
{\topsep}
{\itshape}
{0pt}
{\bfseries}
{:}
{5pt plus 1pt minus 1pt}
{\thmname{#1} \thmnumber{#2}. \thmnote{\normalfont\bfseries#3}}
本质上它看起来像这样:
定理11.定理标题:
但是,当定理没有标题时,我不希望出现冒号。因为它看起来像这样:
定理12.:
有什么办法吗?我目前的解决方案是不使用标点符号,并在有标题时手动添加冒号。
答案1
为什么不简单地将冒号移到参数内部呢\thmnote
? 笔记:我编辑了代码以纠正我忽略的一个错误,该错误与缺少标题时的正确间距有关。
% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly
% declare the paper format.
\usepackage[T1]{fontenc} % Not always necessary, but recommended.
% End of standard header. What follows pertains to the problem at hand.
\usepackage{amsmath,amsthm}
\newtheoremstyle{Fancyplain}
{\topsep}
{\topsep}
{\itshape}
{0pt}
{\bfseries}
{}
{5pt plus 1pt minus 1pt}
{\thmname{#1} \thmnumber{#2}.\thmnote{\ #3:}}
\theoremstyle{Fancyplain}
\newtheorem{thm}{Thorem}
\begin{document}
Text text text.
\begin{thm}
Without a title.
\end{thm}
Text text text.
\begin{thm}[A title]
With a title.
\end{thm}
Text text text.
\end{document}
显示输出的图片已相应更改: