
考慮以下 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/foot
with相對應的行,而不是重新定義整個腳線,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}