Question 1: You can use any of the fields given by \author
, \title
, \date
, or \institute
to place the image in the title page; if none of those fields allow you to achieve the desired placement, you can use the textpos
package. The example below uses the \author
field to add the image.
Question 2: With the help of the textpos
package you can add the logo to the frametitle
template using \addtobeamertemplate
.
A simple example code:
\documentclass{beamer}
\usetheme{Madrid}
\usecolortheme{beaver}
\usepackage{textpos}
\title{The title}
\author[The author]{\includegraphics[height=1cm,width=2cm]{cat}\\The Author}
\institute[Inst.]{The Institute}
\date{\today}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\addtobeamertemplate{frametitle}{}{%
\begin{textblock*}{100mm}(.85\textwidth,-1cm)
\includegraphics[height=1cm,width=2cm]{cat}
\end{textblock*}}
\begin{frame}{Motivation}
Now the logo is visible
\end{frame}
\end{document}
As osjerick mentions in a comment, the above solution won't behave correctly if \framesubtitle
is used (the image will shift downwards); in this case, a TikZ approach can be used to prevent the movement:
\documentclass{beamer}
\usetheme{Madrid}
\usecolortheme{beaver}
\usepackage{tikz}
\title{The title}
\author[The author]{\includegraphics[height=1cm,width=2cm]{cat}\\The Author}
\institute[Inst.]{The Institute}
\date{\today}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\addtobeamertemplate{frametitle}{}{%
\begin{tikzpicture}[remember picture,overlay]
\node[anchor=north east,yshift=2pt] at (current page.north east) {\includegraphics[height=0.8cm]{cat}};
\end{tikzpicture}}
\begin{frame}{Motivation}
Now the logo is visible
\end{frame}
\begin{frame}{Motivation}
\framesubtitle{A}
Now the logo is visible
\end{frame}
\end{document}
A wrapper class beamer16x9.cls
can be easily written:
\ProvidesClass{beamer16x9}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{beamer}}
\ProcessOptions\relax
\LoadClass[aspectratio=169]{beamer}
\endinput
Then starting a document with
\documentclass[<options>]{beamer16x9}
is equivalent to saying
\documentclass[aspectratio=169,<options>]{beamer}
The beamer16x9.cls
file should be in one of the canonical places where TeX engines look for input.
Best Answer
This functionality should appear in textpos v1.8. That's not yet released, because I haven't yet had the time to tidy up the docs, but until it is released and included in distributions, you can have a try with v1.8b1. Any problems, do shout.