我尝试自己定义一个类,并想将标题放在页面的顶部中心,但是当我像这样使用它时
\chead{\textcolor{blue}{\textbf{ {\fontfamily{phv} \selectfont \@title}}}}
它没有将标题打印到其位置。
我\maketitle
在文档中使用命令。我读到它锁定了变量。那么我该如何创建我的类,以便它将标题作为变量打印到页面的顶部中心?
编辑:将文档类别从文章更改为报告并解决问题。
答案1
正如 @Skillmon 所说,当您使用 时\maketitle
,\global\let\@title\@empty
就会执行。因此您可以使用etoolbox
包,
\patchcmd\maketitle{\global\let\@title\@empty}{}{}{}
梅威瑟:
\documentclass{article}
\usepackage{etoolbox}
\usepackage{fancyhdr,xcolor,lipsum}
\title{Title}
\author{Name}
\makeatletter
\patchcmd\maketitle{\global\let\@title\@empty}{}{}{}
\chead{\textcolor{blue}{\ttfamily\@title}}
\makeatother
\pagestyle{fancy}
\begin{document}
\maketitle
\lipsum
\end{document}
答案2
将文档类别从文章改为报告,问题已解决。如果有文章类别的解决方案,欢迎提出。