在 LaTeX 中的文章类别中将日期置于标题之前

在 LaTeX 中的文章类别中将日期置于标题之前

我正在写一篇文章TeX并使用article类。我希望文档日期位于其标题上方,就像本例中那样(文档是这里)。我该如何在article课堂上做到这一点?有没有办法用命令来做到这一点\maketitle在此处输入图片描述

答案1

当您想要修改某个标准命令的行为时,您有两个选择:寻找可以执行此操作的包,或重新定义命令本身。我将在此处采用第二种选择。

\maketitle命令在 中定义article.cls,因此可能值得在那里查看。但是,如果您要多次执行此操作,则可能值得设计自己的类,或者至少设计一个.sty可以重复使用的文件命令。

长话短说,它在内部\maketitle使用了另一个命令\@maketitle,因此您必须重新定义它。我将把它留给您作为练习,让您研究当前的定义(请记住,有两种不同的形式:一种是titlepage使用该选项时,一种是不使用时),但我建议您执行以下操作:

\documentclass{article}
\makeatletter
\def\@maketitle{%
  \newpage
  \null
  \vskip 2em%
  \begin{flushleft}%
  \let \footnote \thanks
     {\normalsize Federal Reserve Bank of Minneapolis \par}
     {\normalsize Research Department Staff Report 328 \par}
     \vskip\baselineskip%
     {\normalsize Revised \@date \par}
     \vskip3\baselineskip%
     {\LARGE \textbf{\@title} \par}%
    \vskip\baselineskip%
     { \@author \par}%
    \vskip 1em%
    {\normalsize University of Minnesota \\ and Federal Reserve
      Bank of Minneapolis}%
  \end{flushleft}%
  \par
  \vskip 1.5em}
\makeatother
\title{Business Cycle Accounting}
\author{V.~V.~Chari}
\date{December 2006}
\begin{document}
\maketitle
\end{document}

您可能希望定义辅助命令,例如\organization或,\fedbranch以帮助实现更多自动化。但上面的命令将为您提供以下内容:

结果

这似乎合理地复制了您的需求。调整和自动化应该非常简单。

希望有帮助!

相关内容