Wiederholen Sie \maketitle mit genau demselben Stil und denselben Parametern

Wiederholen Sie \maketitle mit genau demselben Stil und denselben Parametern

Ich versuche, ein Dokument zu erstellen, das an einer beliebigen Stelle den Titel der Titelseite wiederholt.

\documentclass[a4paper,anonymous]{lipics-v2021}

\title{My Paper}

\titlerunning{paper} 

\author{Me}{}{}{}{}

\begin{document}

% Generate title
\maketitle

% Any amount of text/sections
lorem ipsum...

% I now want to show exactly the same title again
\maketitle

\end{document}

Dieser Code gibt jedoch völlig unformatierten Text der oben angegebenen Titel- und Autorparameter aus.

Einige Links [1,2] schlage vor, das titlingPaket zu verwenden, obwohl es hier zwei Probleme gibt:

  1. Ich kriege es nicht hin, es \maketitleso zu verwenden, wie es in der .clsDatei für mein Projekt definiert ist (in meinem Fall Lipics).
  2. Das titlingPaket erfordert, dass ich alle Parameter für wiederhole \maketitle(z. B. \title{..}, \author{}, usw.).

Antwort1

In Ihrer Klasse sowie in Standardklassen \maketitledeaktiviert sich das selbst und leert auch die \@titleund \@authorMakros, die die von den Befehlen \title{...}und definierten Metadaten enthalten \author{...} (siehe Zeilen 304 und folgende in [githubs lipic-v2021-Klasse][1]). Daher könnten Sie \renewcomnand(in der Präambel) den \maketitleBefehl mit demselben Code (beginnend in Zeile 287) außer den Zeilen 304 bis 314 ausführen.

Eine Standard-WARNUNG: Sie können das für den persönlichen Gebrauch tun. Aber nehmen Sie solche Änderungen niemals vor, wenn Ihr Dokument zur Einreichung bei der entsprechenden Zeitschrift/Konferenz/dem entsprechenden Herausgeber (hier bei Konferenzen der LIPIcs-Reihe) bestimmt ist. [1]:https://github.com/prosysscience/lipics/blob/master/lipics-v2021.cls

Antwort2

Mit Blick auf dieKlassendefinition, finden Sie (Zeilen 287-315)

\renewcommand\maketitle{\par
  \begingroup
    \thispagestyle{plain}
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \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
  \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
}

Der zweite \maketitleschlägt aufgrund von all \global\let...\relaxund fehl \global\let...\@empty.

Sie können versuchen, es neu zu definieren (innerhalb \makeatletterund \makeatotherum das Zeichen @in Makronamen zu verarbeiten).

\makeatletter
\renewcommand\maketitle{\par
  \begingroup
    \thispagestyle{plain}
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \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
}
\makeatother

Die komplette Titelseite inklusive Fußzeile wird erneut ausgedruckt. Wenn Sie nur den Titel selbst möchten, müssen Sie sich die \@maketitleDefinition ansehen und die Teile kopieren, die Sie benötigen.

Beispiel:

\documentclass[a4paper,anonymous]{lipics-v2021}

\makeatletter
\renewcommand\maketitle{\par
  \begingroup
    \thispagestyle{plain}
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \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
}
\makeatother

\title{My Paper}

\titlerunning{paper}

\author{Me}{}{}{}{}

\begin{document}

% Generate title
\maketitle

% Any amount of text/sections
lorem ipsum...

% I now want to show exactly the same title again
\maketitle

\end{document}

verwandte Informationen