12

For preparing a video lecture, I would like to have a frame template on which I can reserve a rectangular area, on which I want to place later a camera overlay for screencasting.
Ideally, the template also has the aspect ratio 16:9, to allow for a FullHD recording.
The size of the rectangular area should be between around 1/9 of the total area.

|----------------------------------|
|              Title               |
|----------------------------------|
|                                  |
|                                  |
|        CONTENT      |------------|
|                     |   video    |
|                     |  overlay   |
|---------------------|------------|

A modification of the default scheme would be sufficient since the corporate scheme builds on it.

3
  • IMHO you should draw with TikZ, for example, a rectangle of the correct dimensions in lower right corner. Then prepare all you slides taking care of don't write in the rectangle. In the end, for the final version, you just delete the rectangle from all you slides. Et voilà that's it.
    – vi pa
    Mar 23, 2020 at 20:08
  • (And I apologize for assuming @vipa's gender in my bounty, but I can't edit it!) There should be a way to play with \setbeamertemplate{footline} in some way to get the content to flow around this overlay, but I can't find it…
    – Clément
    Aug 10, 2020 at 14:29
  • @Clément No problem, by the way I'm a male. For your question I've found a the package shapepar of Donald Arseneau but I don't know if it work in Beamer class.
    – vi pa
    Aug 11, 2020 at 8:55

3 Answers 3

7

IMHO you should draw with TikZ, for example, a rectangle of the correct dimensions in lower right corner. Then prepare all your slides taking care of don't write in the rectangle. In the end, for the final version, you just delete the rectangle from all your slides. Et voilà that's it.

This is the very simple code:

\documentclass[11pt,aspectratio=169]{beamer}
\usetheme{default}
\usepackage{tikz}
\usetikzlibrary{calc}
\newcommand{\forCam}{
\tikz[remember picture,overlay]
\fill[red] (current page.south east) rectangle +(-5,3); %adjust this values by trial and errors for fit your camera overlay 
}
\begin{document}
\setbeamertemplate{navigation symbols}{}

\begin{frame}
    \frametitle{Title}
\forCam % comment this line for delete the rectangle in the final version
Content of the slide

\tikz[remember picture, overlay]
\node at ($(current page.south east)!0.5!($(current page.south east)+(-5,3)$)$) {Don't write here!};
\end{frame}
\end{document}

slide for overlay camera

2
1

As an alternative or addon to the existing answer of leaving the responsibility to the author, refining the margins a bit can help to accomplish this more easily. The following simply shifts the content block a bit to the left.

    \makeatletter
    \setbeamersize{text margin left=0.75\beamer@leftmargin}
    \setbeamersize{text margin right=3\beamer@rightmargin}
    \makeatother

Additionally, using beamer's aspectratio parameter (set to 169 or 1610) can create more space on the sides and makes sure your presentations/videos match most viewing devices.

Be aware that some elements might resize unintendedly, e.g., \includegraphics referring to \textwidth with either these methods.

1

You could use the \logo{...} macro to mark an appropriately sized region so you know which area you want to keep clean of text:

\documentclass{beamer}

\logo{\color{red}\rule{4cm}{3cm}}

\begin{document}
    
\begin{frame}
  \frametitle{title}
    abc
\end{frame} 
    
\end{document}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .