我正在使用该classicthesis
包,并想添加自定义定理和证明样式。我也在使用该amsthm
包。手册的第 10 页和第 11 页classicthesis
显示了一个示例代码,其中可以将标题字体设置为\spacedlowsmallcaps
。
% book example for classicthesis.sty
\documentclass[11pt,a5paper,footinclude=true,headinclude=true]{scrbook} % KOMA-Script book
\usepackage[T1]{fontenc}
\usepackage{lipsum}
\usepackage[linedheaders,parts,pdfspacing]{classicthesis} % ,manychapters
\usepackage{amsthm}
\begin{document}
\chapter{Some Math Testing}
\newtheoremstyle{note}% hnamei
{3pt}% hSpace abovei
{3pt}% hSpace belowi note
{}% hBody fonti
{}% hIndent amounti1
%{\itshape}% hTheorem head fonti
{\spacedlowsmallcaps}%
{:}% hPunctuation after theorem headi
{.5em}% hSpace after theorem headi2
{}%
\theoremstyle{note}
\newtheorem{note}{Definition}
\begin{note}
Here is a new definition
\end{note}
但是输出中的标题似乎是常规字体。如果我\spacedlowsmallcaps
在任何环境之外使用该命令,它都可以正常工作。
有人能告诉我问题出在哪里吗?我使用的是 pdfTeX,版本 3.1415926-2.3-1.40.12 (TeX Live 2011),编译过程中没有出现任何错误。
答案1
由于\spacedlowsmallcaps
接受强制参数,您可以使用最后一个参数\newtheoremstyle
并执行以下操作:
\spacedlowsmallcaps{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}
完整示例:
\documentclass{scrbook}
\usepackage{classicthesis}
\usepackage{amsthm}
\newtheoremstyle{note}% hnamei
{3pt}% hSpace abovei
{3pt}% hSpace belowi note
{}% hBody fonti
{}% hIndent amounti1
%{\itshape}% hTheorem head fonti
{}%
{:}% hPunctuation after theorem headi
{.5em}% hSpace after theorem headi2
{\spacedlowsmallcaps{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}}%
\theoremstyle{note}
\newtheorem{note}{Definition}
\begin{document}
\chapter{Some Math Testing}
\begin{note}
Here is a new definition
\end{note}
\begin{note}[A test definition]
Here is another definition
\end{note}
\end{document}