ビーマーテンプレートのタイトルが空の場合の垂直配置

ビーマーテンプレートのタイトルが空の場合の垂直配置

私は Beamer 用にカスタマイズされたテンプレートを使用しています。特に、見出しテンプレートを完全に書き直しました。ただし、タイトルのないフレームを使用すると、垂直方向の配置がタイトルのある他のスライドと同じになりません。驚いたことに、タイトルが 1 行か 2 行かに関係なく、うまく機能します... 説明するのは難しいですが、以下の例では非常に簡単に確認できます。3 番目のスライドの垂直方向の配置が間違っていることに注意してください。興味深い部分は 68 行目です。ここで何が起こっているのか、わかりますか?

\PassOptionsToPackage{draft}{graphicx}
\documentclass[xcolor=dvipsnames]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{amsfonts}
\usepackage{cmbright}
\usepackage[T1]{fontenc}
\usepackage{etoolbox}
\usepackage{gnuplot-lua-tikz}
\usepackage{environ}
\usepackage{ulem}
\usepackage{textpos}

\makeatletter
\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip0.5em}{}{}
\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%TWO COLOURS OF THE TEMPLATE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\definecolor{azul}{rgb}{0.603,0.733,0.833}
\definecolor{verde}{rgb}{0.647,0.663,0.2.7}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING COLOURS IN SEVERAL ELEMENTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamercolor{frametitle}{fg=black}
\setbeamercolor{headline}{fg=black}
\setbeamercolor{footline}{fg=black}
\setbeamercolor{block body}{bg=azul}
\setbeamercolor{block title}{bg=verde,fg=black}
\setbeamercolor{item}{fg=verde}
\setbeamercolor{alerted text}{fg=Red}
\setbeamercolor{section in toc}{fg=azul}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING ASPECT OF DIVERSE FRAME ELEMENTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\useoutertheme[]{default}

\setbeamertemplate{section in toc}[circle]
\setbeamertemplate{subsection in toc}[square]
\setbeamertemplate{itemize item}{$\bullet$}
\setbeamertemplate{navigation symbols}{}
\setbeamercovered{invisible}
\setbeamertemplate{sections in toc}[ball]

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING THE FOOTLINE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamertemplate{footline}{
  \hspace{.6cm}
  \vspace{.2cm}
  \tikz \fill [azul] (0,0) rectangle (11.4, 2pt);

  \parbox[c][0.8cm][t]{\textwidth}{\hspace{3em} \scriptsize\bf 17 November 2014 $\rangle$ J.J. G\'omez-Navarro $\rangle$ edit the footline in the preamble}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%THIS THEME DISCARDS THE TITLE IN THE SLIDES, AND USES HEADLINE INSTEAD
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle{}
\setbeamertemplate{headline}{

  \hspace{1cm}
  \parbox[c][1.2cm][c]{.65\textwidth}{\raggedright{}\bf\Large\insertframetitle}

  \begin{textblock*}{100mm}(.8\textwidth,-1.0cm)
    \includegraphics[width=2.0cm]{logo.pdf}
  \end{textblock*}

  \vspace*{0.1cm}

  \hspace*{0.6cm}
  \tikz \fill [azul] (0,0) rectangle (9.0, 2pt);
}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PRESENTATION  STARTS HERE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}


\begin{frame}{title}

  frame with title

\end{frame}



\begin{frame}{Very very long title with so much text it does not fit in one lines }

  frame frame frame

\end{frame}

\begin{frame}{ }

  frame frame frame

\end{frame}

\end{document}

答え1

3 番目のフレームで、空のタイトルを示すを削除すると{}、同じ垂直配置の問題が発生します。これは、入力を提供する必要があることを示しています。この場合、{}または\emptyまたは で\phantom{text}問題を解決できます。

\begin{frame}{{}} or \begin{frame}{\empty} or \begin{frame}{\phantom{a}}

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

コード

\PassOptionsToPackage{draft}{graphicx}
\documentclass[xcolor=dvipsnames]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{amsfonts}
\usepackage{cmbright}
\usepackage[T1]{fontenc}
\usepackage{etoolbox}
\usepackage{gnuplot-lua-tikz}
\usepackage{environ}
\usepackage{ulem}
\usepackage{textpos}

\makeatletter
\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip0.5em}{}{}
\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%TWO COLOURS OF THE TEMPLATE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\definecolor{azul}{rgb}{0.603,0.733,0.833}
\definecolor{verde}{rgb}{0.647,0.663,0.2.7}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING COLOURS IN SEVERAL ELEMENTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamercolor{frametitle}{fg=black}
\setbeamercolor{headline}{fg=black}
\setbeamercolor{footline}{fg=black}
\setbeamercolor{block body}{bg=azul}
\setbeamercolor{block title}{bg=verde,fg=black}
\setbeamercolor{item}{fg=verde}
\setbeamercolor{alerted text}{fg=Red}
\setbeamercolor{section in toc}{fg=azul}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING ASPECT OF DIVERSE FRAME ELEMENTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\useoutertheme[]{default}

\setbeamertemplate{section in toc}[circle]
\setbeamertemplate{subsection in toc}[square]
\setbeamertemplate{itemize item}{$\bullet$}
\setbeamertemplate{navigation symbols}{}
\setbeamercovered{invisible}
\setbeamertemplate{sections in toc}[ball]

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%SETTING THE FOOTLINE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamertemplate{footline}{
  \hspace{.6cm}
  \vspace{.2cm}
  \tikz \fill [azul] (0,0) rectangle (11.4, 2pt);

  \parbox[c][0.8cm][t]{\textwidth}{\hspace{3em} \scriptsize\bf 17 November 2014 $\rangle$ J.J. G\'omez-Navarro $\rangle$ edit the footline in the preamble}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%THIS THEME DISCARDS THE TITLE IN THE SLIDES, AND USES HEADLINE INSTEAD
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle{}
\setbeamertemplate{headline}{

  \hspace{1cm}
  \parbox[c][1.2cm][c]{.65\textwidth}{\raggedright{}\bf\Large\insertframetitle}

  \begin{textblock*}{100mm}(.8\textwidth,-1.0cm)
    \includegraphics[width=2.0cm]{logo.pdf}
  \end{textblock*}

  \vspace*{0.1cm}

  \hspace*{0.6cm}
  \tikz \fill [azul] (0,0) rectangle (9.0, 2pt);
}



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PRESENTATION  STARTS HERE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}


\begin{frame}{title}

  frame with title

\end{frame}



\begin{frame}{Very very long title with so much text it does not fit in one lines }

  frame frame frame

\end{frame}

\begin{frame}{ }

  frame frame frame

\end{frame}

\end{document}

関連情報