ムウェ

ムウェ

次の MWE を検討してください。

\documentclass[10pt]{beamer}

\usepackage{lmodern}
\usetheme{Madrid}

\title{Testing Beamer Title}
\subtitle{With 10pt font}
\author{John Doe}
\date{\today}

\begin{document}
\frame{\titlepage}
\end{document}

最初の画像でわかるように、フッターの 3 番目の部分の日付が適切に中央に配置されていません (たとえば、オプションを設定していない 2 番目の画像ほど中央に配置されていません10pt)。そこで質問ですが、フレーム番号を右端に維持しながら、フッターの 3 番目の部分/セクションの日付を中央に配置するにはどうすればよいのでしょうか。

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

編集:Kevin C が提供した回答は素晴らしいです。しかし、私は、全体のフットラインを再定義する代わりに、これのようdate in head/footに対応するラインのみをパッチできるのではないかと思っていました。etoolbox答え

答え1

デフォルトのfootlineテーマでは、Madrid最後のブロックが右揃えになっています。そのため、日付は中央揃えにならず、ページ番号が変わると(たとえば、1 桁から 2 桁に変わると)、わずかにずれてしまいます。

日付を最後のブロックの中央に配置し、ページ数の変更の影響を受けないようにするには、footline次の MWE のように新しいテーマを定義します。

ムウェ

\documentclass[]{beamer}

\usepackage{etoolbox}
\usepackage{lmodern}
\usetheme{Madrid}

\makeatletter
% change in-box alignment from right to left
\patchcmd{\beamer@@tmpl@footline}% <cmd>
  {right}% <search>
  {left}% <replace>
  {}% <success>
  {}% <failure>

% replace definition of 'date in head/foot' box
\patchcmd{\beamer@@tmpl@footline}% <cmd>
  {\usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
   \insertframenumber{} / \inserttotalframenumber\hspace*{2ex}}% <search>
  {\rlap{\makebox[.333333\paperwidth][r]{\insertframenumber{} / \inserttotalframenumber \hspace*{2ex}}}
   \usebeamerfont{date in head/foot}\hfill\insertshortdate{}\hfill}% <replace>
  {}% <success>
  {}% <failure>
\makeatother

\title{Testing Beamer Title}
\subtitle{With default font size}
\author{John Doe}
\date{\today}

\begin{document}
\frame{\titlepage}
\frame{test}\frame{test}\frame{test}\frame{test}\frame{test}
\frame{test}\frame{test}\frame{test}\frame{test}\frame{test}
\end{document}

出力

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

関連情報