
Я пишу статью в 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
, чтобы помочь автоматизировать это больше. Но вышеприведенное даст вам это:
Что кажется разумным факсимиле того, что вам нужно. Настройка и автоматизация этого должны быть довольно простыми.
Надеюсь, это поможет!