Es scheint, dass verschiedene Klassen Autorenlayouts mithilfe von Tabellen einrichten. Ich möchte eine dieser Ausgaben rendern:
Gleichwertig \begin{tabular}{rl}
:
Joe Schmoe My Boss
Jane Doe His Boss
oder, gleichwertig mit \raggedleft
:
Joe Schmoe My Boss
Jane Doe His Boss
von etwas, das diesem ähnelt M(N)WE:
\documentclass{beamer}
\author{%
Joe Schmoe, My Boss%
\and
Jane Doe, His Boss%
}
\begin{document}
\maketitle
\end{document}
Ich habe nichts dagegen, \institute
für die Berufsbezeichnung „oder etwas Gleichwertiges“ zu verwenden, und ich kann die Berufsbezeichnung sogar weglassen, um eine einfache Lösung zu sehen.
In einigen anderen DokumentklassenEs gibt eine schöne Lösung mit\preauthor
, die ich in meiner Style-Datei ändern könnte. Leider erhalte ich mit diesem Code in Beamer 3 einen unbekannten Befehlsfehler \preauthor
. Gibt es in Beamer entsprechende Konstrukte?
Es gibt auch einen anderen Ansatzdas eine tabellarische Umgebung verwendet aber auch das funktioniert bei Beamer nicht.
\defbeamertemplate*{title page}{default theme}{...
Idealerweise würde ich meine Beamer-Style-Datei gerne so ändern , dass ich sie weiterhin \author{}
mit allem Drum und Dran in der Hauptdatei verwenden könnte. Da ich aber an keiner anderen Stelle auf der Folie Autoren verwende, würde eine Lösung mit einer Art Box in der Hauptquelle genauso gut funktionieren.
Antwort1
Eine Möglichkeit besteht darin, das intern \beamer@author
definierte Element neu zu definieren beamerbasetitle.sty
(auf diese Weise wird die Definition themenunabhängig), um ein tabular
mit der gewünschten Ausrichtung zu verwenden. Sie müssen das optionale Argument verwenden, um geeignete Informationen für das Autorenlesezeichen bereitzustellen:
\documentclass{beamer}
\usetheme{Madrid}
\makeatletter
\long\def\beamer@author[#1]#2{%
\def\insertauthor{\def\inst{\beamer@insttitle}\def\and{\beamer@andtitle}%
\begin{tabular}{rl}#2\end{tabular}}%
\def\beamer@shortauthor{#1}%
\ifbeamer@autopdfinfo%
\def\beamer@andstripped{}%
\beamer@stripands#1 \and\relax
{\let\inst=\@gobble\let\thanks=\@gobble\def\and{, }\hypersetup{pdfauthor={\beamer@andstripped}}}
\fi%
}
\makeatother
\title{The title}
\author[Joe and Jane]{%
Joe Schmoe, & My Boss \\
Jane Doe, & His Boss
}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\end{document}
Für die andere erforderliche Ausrichtung wechseln Sie \begin{tabular}{rl}
zu oben.\begin{tabular}{r}
In einem Kommentar wurde darum gebeten, es \and
so neu zu definieren, dass es so wirkt, als \tabularnewline
würden die Autorenzeilen im obligatorischen Argument von getrennt \author
. Hier ist die erforderliche Änderung:
\documentclass{beamer}
\usetheme{Madrid}
\makeatletter
\long\def\beamer@author[#1]#2{%
\def\and{\tabularnewline}
\def\insertauthor{\def\inst{\beamer@insttitle}\def\and{\tabularnewline}%
\begin{tabular}{rl}#2\end{tabular}}%
\def\beamer@shortauthor{#1}%
\ifbeamer@autopdfinfo%
\def\beamer@andstripped{}%
\beamer@stripands#1 \and\relax
{\let\inst=\@gobble\let\thanks=\@gobble\def\and{, }\hypersetup{pdfauthor={\beamer@andstripped}}}
\fi%
}
\makeatother
\title{The title}
\author[Joe \and Jane]{%
Joe Schmoe, & My Boss \and
Jane Doe, & His Boss
}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\end{document}