![Wie definiere ich Befehle für zusätzliche Informationen in der Beamer-Hauptdatei zur Verwendung in Designs?](https://rvso.com/image/309859/Wie%20definiere%20ich%20Befehle%20f%C3%BCr%20zus%C3%A4tzliche%20Informationen%20in%20der%20Beamer-Hauptdatei%20zur%20Verwendung%20in%20Designs%3F.png)
In einem typischen Beamer-Dokument kann ich verschiedene Optionen festlegen, wie \author
oder \title
:
main.tex
\documentclass{beamer}
\author{George Orwell}
\title{Animal Farm}
\date{\today}
\institute[TUD]
%\def\talklocation{Berlin}
\usetheme{tudrobert}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
die dann in den Vorlagendefinitionen verwendet werden können:
beamerthemetudrobert.tex
\mode<presentation>
\usepackage{graphicx}
\usepackage[absolute,overlay]{textpos}
\usepackage{calc}
\usepackage{fontspec}
\useinnertheme{tudrobert}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{blocks}[rounded][shadow=true]
\mode<all>
Und zum Schluss das Thema, bei dem ich den Befehl verwenden möchte:
beamerinnerthemetudrobert.tex
\mode<presentation>
\defbeamertemplate*{title page}{tudrobert}{%
\usebeamerfont*{title}
\MakeUppercase{\inserttitle}\par
\vfill
{\scriptsize\insertauthor}
\vfill
\vfill
%\talklocation, \insertdate
}
\mode<all>
Die vorgeschlagene Verwendung von
\def\talklocation{Berlin}
Und
\talklocation
Wirft die Fehler
Das Gleiche gilt für
\newcommand{\talklocation}{Berlin}
Was ist die geeignete Methode zum Hinzufügen zusätzlicher Eigenschaften/Zeichenfolgen, die an die Designs übergeben werden sollen?
Antwort1
Wie von Jojo Boulix in den Kommentaren vorgeschlagenBeamer-Optionensind der richtige Weg.
Die drei Dateien könnten dann wie folgt aussehen:
main.tex
\documentclass{beamer}
\author{George Orwell}
\title{Animal Farm}
\date{\today}
\institute[TUD]
\usetheme[location=Berlin]{tudrobert}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\end{document}
beamerthemetudrobert.tex
\mode<presentation>
\DeclareOptionBeamer{location}{\PassOptionsToPackage{location=#1}{beamerinnerthemetudrobert}}
\DeclareOptionBeamer{conference}{\PassOptionsToPackage{conference=#1}{beamerinnerthemetudrobert}}
\ProcessOptionsBeamer
\usepackage{graphicx}
\usepackage[absolute,overlay]{textpos}
\usepackage{calc}
\usepackage{fontspec}
\useinnertheme{tudrobert}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{blocks}[rounded][shadow=true]
\mode<all>
beamerinnerthemetudrobert.tex
\mode<presentation>
\DeclareOptionBeamer{location}{\def\beamer@tudrobert@location{#1}}
\DeclareOptionBeamer{conference}{\def\beamer@tudrobert@conference{#1}}
\ProcessOptionsBeamer
\defbeamertemplate*{title page}{tudrobert}{%
\usebeamerfont*{title}
\MakeUppercase{\inserttitle}\par
\vfill
{\scriptsize\insertauthor}
\vfill
\vfill
\beamer@tudrobert@location, \insertdate
\beamer@tudrobert@conference
}
\mode<all>