[Tex/LaTex] Beamer metropolis theme – add image to section page

beamerbeamer-metropolisgraphics

Is there a way to easily add an image to a section slide in the Metropolis theme for beamer?

Basically, I have this using \section{Selection Bias}:

enter image description here

And want this:

enter image description here

I found a related answer here, but it seems like there might be a more efficient way to do this without renewing the command every time, and I'd rather not rebuild the title part because I like having the indicator bar, etc.

Best Answer

If you don't like the renewcommand, you could pass the image name as optional argument to the section page template.

\documentclass{beamer}
\usetheme{metropolis}

%%% Section page template with picture

\makeatletter
\defbeamertemplate*{section page}{mytheme}[1][]{
  \centering
  \begin{minipage}{22em}
    \raggedright
    \usebeamercolor[fg]{section title}
    \usebeamerfont{section title}
    \insertsectionhead\\[-1ex]
    \usebeamertemplate*{progress bar in section page}
    \par
    \ifx\insertsubsectionhead\@empty\else%
      \usebeamercolor[fg]{subsection title}%
      \usebeamerfont{subsection title}%
      \insertsubsectionhead
    \fi
    \vskip0.5cm
    \ifstrempty{#1}{}{%
        \includegraphics[width=.4\textwidth]{#1}%
    }
  \end{minipage}
  \par
  \vspace{\baselineskip}
}
\makeatother

%%% Define a command to include picture in section, 
%%% make section, and revert to old template

\newcommand{\sectionpic}[2]{
   \setbeamertemplate{section page}[mytheme][#2]
   \section{#1}
   \setbeamertemplate{section page}[mytheme]
}

%%% Document

\begin{document}

\section{normal}    
\begin{frame}
    abc
\end{frame} 

\sectionpic{image}{example-image}
\begin{frame}
    abc
\end{frame}

\end{document}