平均能量损失

平均能量损失

我正在使用一个模板,该模板\maketitle除了作者和标题外还定义了日期。我找不到定义它的文件,但.tex我正在修改的模板中有以下注释:

\maketitle          % Use the \author, \title and \date info

我想重新定义命令以仅包含\author\title信息。关于如何做到这一点有什么建议吗?

我想\maketitle在我的.tex文件中重新定义。原始定义可能位于我可能使用的任何包中。

答案1

正如您所说,您不知道您的\maketitle定义在哪里。让我们使用 TeX 来找出定义:

代替

\maketitle          % Use the \author, \title and \date info

\meaning\maketitle

\maketitle此行将为您提供当前有效的定义。这很可能会导致一些簿记操作,然后调用另一个宏,通常称为\@maketitle或类似于 WChargin 的答案。因此,我们必须找出它\@maketitle(或无论它叫什么)的作用。所以添加

\makeatletter\meaning\@maketitle\makeatother

-pair\makeatletter ... \makeatother是使 LaTeX 能够处理 中所必需@\@maketitle

有了这些信息,您就可以按照 WChargin 的回答进行操作。假设您获得了 WChargin 发布的定义,您可以按如下方式进行修改(\makeatletter ... \makeatother由于 而再次添加@

\makeatletter
\def\@maketitle{%
  \newpage
  \null
  \vskip 2em%
  \begin{center}%
  \let \footnote \thanks
    {\LARGE \@title \par}%
    \vskip 1.5em%
    {\large
      \lineskip .5em%
      \begin{tabular}[t]{c}%
        \@author
      \end{tabular}\par}%
    \vskip 1em%
    %{\large \@date}%
  \end{center}%
  \par
  \vskip 1.5em}
\makeatother

您会发现,这与 WChargin 所写的完全一样。

答案2

最简单的方法是

\date{}

这将使用一个空日期。但会有一个额外的空格。

我没有您的样式文件,因此我将使用它article作为示例。要查找 的定义\maketitle,您可以\show\maketitle从交互式 TeX 运行中执行,也可以在包文件中查找(类的扩展名为 .cls,样式的扩展名为 .sty)。后者可能更好,因为您可以获得更好的格式和缩进。

要获取包的路径,例如 class article.cls,请kpsewhich article.cls在终端运行。

此后,从article.cls(第 213 行):

\newcommand\maketitle{\par
  \begingroup
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
    \long\def\@makefntext##1{\parindent 1em\noindent
            \hb@[email protected]{%
                \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
    \if@twocolumn
      \ifnum \col@number=\@ne
        \@maketitle
      \else
        \twocolumn[\@maketitle]%
      \fi
    \else
      \newpage
      \global\@topnum\z@   % Prevents figures from going at top of page.
      \@maketitle
    \fi
    \thispagestyle{plain}\@thanks
  \endgroup
  \setcounter{footnote}{0}%
  \global\let\thanks\relax
  \global\let\maketitle\relax
  \global\let\@maketitle\relax
  \global\let\@thanks\@empty
  \global\let\@author\@empty
  \global\let\@date\@empty
  \global\let\@title\@empty
  \global\let\title\relax
  \global\let\author\relax
  \global\let\date\relax
  \global\let\and\relax
}

从这里我们可以看出,这是\@maketitle执行实际排版的命令。它在下一行定义。

\def\@maketitle{%
  \newpage
  \null
  \vskip 2em%
  \begin{center}%
  \let \footnote \thanks
    {\LARGE \@title \par}%
    \vskip 1.5em%
    {\large
      \lineskip .5em%
      \begin{tabular}[t]{c}%
        \@author
      \end{tabular}\par}%
    \vskip 1em%
    {\large \@date}%
  \end{center}%
  \par
  \vskip 1.5em}
\fi

因此,您只需重新定义它,删除您不想要的行,就完成了。


平均能量损失

\documentclass{article}

\makeatletter
    \def\@maketitle{%
  \newpage
  \null
  \vskip 2em%
  \begin{center}%
  \let \footnote \thanks
    {\LARGE \@title \par}%
    \vskip 1.5em%
    {\large
      \lineskip .5em%
      \begin{tabular}[t]{c}%
        \@author
      \end{tabular}\par}%
    %\vskip 1em%
    %{\large \@date}%
  \end{center}%
  \par
  \vskip 1.5em}
\fi
\makeatother

\title{MWE}
\author{You}
\date{Today}

\begin{document}
\maketitle
Hello, world!
\end{document}

相关内容