Beamer: 見出しのロゴをフレームタイトルに重ねる

Beamer: 見出しのロゴをフレームタイトルに重ねる

ゴール

beamer上部に次のレイアウトがあるテーマを作成しようとしています:

________________________________________
|                       |               |
| Author & Insitute     | L O G O       |
|_______________________|_         _____|
|                         \_______/     |
| Frame Title                           |
|_______________________________________|
|                                       |
|  C O N T E N T   H E R E    . . .     |

すなわち。の重なり合うロゴ

アプローチ

私には 3 つのアプローチがありますが、どちらもうまくいきませんでした。

  1. 置くフレームタイトルヘッドライン同様に、希望のレイアウトを実現しようとしましたbeamercolorboxが、レイアウトが実現できなかっただけでなく、フレームタイトルヘッドライン
  2. 持っていますヘッドラインのみ含む著者情報そしてロゴ、しかし、後者は、下のものと何らかの形で「重なり合う」ようにし、フレームタイトル下。
  3. 作るヘッドライン重なり合う部分も含め、縦方向に大きくすると、背景(存在する場合)もヘッドライン2色で着色する必要がありました。フレームタイトルエリア的には。

ここで説明しようとした 3 つのアプローチは次のとおりです。

アプローチ1 アプローチ1


アプローチ2 アプローチ2


アプローチ3 アプローチ3


MWE / コード

これまで私がコードに関して行ったことは次のとおりです。

main.tex:

\documentclass{beamer}

\usetheme{mytheme}

\title{The Title}
\author{S.~Author}
\institute{The Institute}

\usepackage{graphicx}
\pgfdeclareimage[height=0.5cm]{logo}{example-image}
\logo{\pgfuseimage{logo}}


\begin{document}

\begin{frame}[plain]
  \titlepage
\end{frame}

\begin{frame}{Outline}
  \tableofcontents
\end{frame}

\end{document}

そして私の地元ではTEXMF:tex/latex/beamertheme-mytheme/

beamerthememytheme.sty:

\mode<presentation>

\useinnertheme{mytheme}
\useoutertheme{mytheme}
\usecolortheme{mytheme}

\mode<all>

beamerouterthememytheme.sty:

\mode<presentation>

% background: transparent    
\setbeamercolor{background}{bg=}
% Grid overlay, to test alignment, 0.028 is given magic value
\setbeamertemplate{background}[grid][step=0.028\pagewidth]

\defbeamertemplate*{headline}{mytheme}
{%
    % either make headline contain
    %  1. both logo and frame title (not possible?)
    %  2. only logo, and let it somehow "grow" or "overlap" into the frame title
    %  3. only logo + some vertical space to make it seem like it's overlapping, but this would create more problems, probably.
}

\mode
<all>

これらのうちどれが最善のアプローチか(または、最善のアプローチがない場合は、何がより良いか)について、何かアドバイスをいただけますか? 検索してみましたが、おそらく解決策があると思いますが、現時点では役立つものを見つけるための用語が不足していると思います。

答え1

少しハックっぽいですが、基本的な考え方は、ロゴと色付きの領域を背景に配置することです。次の例では、https://i.stack.imgur.com/XXQjl.pngイメージとして。

注意: フレームタイトルのないフレームには灰色の線が表示されます

\documentclass{beamer}

\setbeamerfont{headline}{size=\normalfont}
\setbeamercolor{headline}{bg=white}

\setbeamertemplate{headline}{%
  \begin{beamercolorbox}[sep=0.3cm,left,wd=.67\paperwidth]{headline}
        \usebeamerfont{headline}%
        \insertshortauthor~\&~\insertshortinstitute 
  \end{beamercolorbox}%
}

\setbeamercolor{frametitle}{bg=}
\setbeamercolor{framesubtitle}{bg=gray!55!white}

\makeatletter
\setbeamertemplate{frametitle}{%
    \vspace*{-0.1cm}
  \ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
  \@tempdima=\textwidth%
  \advance\@tempdima by\beamer@leftmargin%
  \advance\@tempdima by\beamer@rightmargin%
  \begin{beamercolorbox}[sep=0.3cm,left,wd=\the\@tempdima]{frametitle}
    \usebeamerfont{frametitle}%
    \vbox{}\vskip-1ex%
    \if@tempswa\else\csname beamer@fteleft\endcsname\fi%
    \strut\insertframetitle\strut\par%
   \end{beamercolorbox}
%    {%
      \ifx\insertframesubtitle\@empty%
      \else%
        \vskip-0.3cm%
        \begin{beamercolorbox}[sep=0.1cm,left,wd=\the\@tempdima]{framesubtitle} 
        {\hspace{0.2cm}\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle\strut\par}%
        \end{beamercolorbox}        
      \fi
%    }%
    \vskip-1ex%
    \if@tempswa\else\vskip-.3cm\fi% set inside beamercolorbox... evil here...
%  \end{beamercolorbox}%
}
\makeatother

\setbeamercolor{background}{bg=}
\setbeamertemplate{background}{\includegraphics[width=\paperwidth,height=.17\paperheight]{XXQjl}}

\logo{\includegraphics[width=.2\paperwidth]{example-image}}


\title{The Title}
\author{S.~Author}
\institute{The Institute}

\begin{document}

{
\setbeamertemplate{background}{}
\begin{frame}[plain]
  \titlepage
\end{frame}
}

\begin{frame}{Outline}
  \tableofcontents
\end{frame}

\begin{frame}
\frametitle{title}
\framesubtitle{subtitle}
\end{frame}

\end{document}

ここに画像の説明を入力してください

関連情報