微量元素

微量元素

考慮以下 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}

正如您在第一張圖片中看到的,頁腳第三部分中的日期沒有正確居中(例如,它不像我沒有設定選項的第二張圖片那樣居中10pt)。所以我的問題是:如何將日期居中於頁腳的第三部分/部分,同時將幀編號保持在最右側?

在此輸入影像描述 在此輸入影像描述

編輯:Kevin C 提供的答案非常有效。但是我想知道是否可以只修補與date in head/footwith相對應的行,而不是重新定義整個腳線,etoolbox就像在本例中所做的那樣回答

答案1

預設footline主題的Madrid最後一個區塊右對齊。因此,日期不居中,並且當頁碼更改時(例如,從一位數變為兩位數時),日期會稍微移動。

為了使日期集中在最後一個區塊中並且不受頁數變化的影響,可以定義一個新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}

輸出

在此輸入影像描述

相關內容