呼唤所有 ClassicThesis 用户,我需要对我的博士论文进行一些调整。我想在每个部分的标题页中添加一些文字(引文),前零件编号和标题,并在其后保留简短描述。classicthesis.sty 中的相关代码块是
\newcommand{\ct@parttext}{\relax}
\newcommand{\ctparttext}[1]{\renewcommand{\ct@parttext}{#1 \relax}}
\titleformat{\part}[display]
{\normalfont\centering\large}
{\thispagestyle{empty}\partname~\MakeTextUppercase{\thepart}}{1em}
{\color{Maroon}\spacedallcaps}[\bigskip\normalfont\normalsize\color{Black}\begin{quote}\ct@parttext \end{quote}]
我如何编辑它来创建二文本框,一个在部件标题之前,一个在部件标题之后?在这里更改 \ctparttext 的定义似乎是个糟糕的主意……
答案1
我认为你需要做两件事:
- 定义一组新命令(基于
\ctparttext
)来“保留”您的报价。 - 修改
titleformat
forpart
以使用它们,再次类比现有的定义。
\makeatletter
\def\ct@partquotekeep{\relax}
\def\ct@partquoteprint{\ct@partquotekeep\gdef\ct@partquotekeep{\relax}}
\newcommand{\ctpartquote}[1]{\renewcommand{\ct@partquotekeep}{#1}}
\titleformat{\part}[display]
{\color{Black}\begin{quote}\normalfont\normalsize\ct@partquoteprint\end{quote}\bigskip\ct@altfont\centering\large}
{\thispagestyle{empty}\normalfont\partname~\MakeTextUppercase{\thepart}}{1em}
{\color{CTtitle}\spacedallcaps}[\bigskip\normalfont\normalsize\color{Black}\begin{quote}\ctparttext@print \end{quote}]
\makeatother
现在用法如下:
\ctpartquote{What could be more precious than a lovely quotation for your Part.
\hfill --- \textsc{famous author}}
\ctparttext{This is the part text. This is the part text. This is the part text.}
\part{Part One}
结果: