Центрировать содержимое кадра в классе проектора

Центрировать содержимое кадра в классе проектора

Никого не смущает, что класс Beamer не идеально центрирует содержимое кадров по вертикали?

Снизу места немного больше, чем сверху. Может ли кто-нибудь дать решение, как добиться идеального центрирования контента и, что еще важнее, сделать это глобальной настройкой?

Ниже приведен (тривиальный) MWE.

\documentclass{beamer}

\begin{document}
    \begin{frame}
        This text is not perfectly centered vertically.
    \end{frame}
\end{document}

решение1

Thetextposупаковкапозволяет вам разместить текст в любом указанном вами месте на странице. В beamerклассе пакет должен быть загружен с опцией overlay, в других классах документов это не так. Я также включил опцию showboxesпросто для сравнения с идеальным центром, рассчитанным с помощью tikz. В вашем окончательном документе вы можете удалить опцию showboxesили добавить \textblockrulecolor{white}команду для скрытия полей. Последняя команда по моему опыту привела к более точному позиционированию. Но я понятия не имею, почему это произошло.

\documentclass{beamer}
\usepackage{tikz,lmodern}
\usepackage[absolute,overlay,showboxes]{textpos}
\begin{document}
\centering
\begin{frame}{title}
  This text is not perfectly centered vertically.
  \begin{tikzpicture}[overlay, remember picture]
    \draw (current page.north west)--(current page.south east) (current page.south west)--(current page.north east);
  \end{tikzpicture}

  \begin{textblock}{13.5}[.5,.5](8,8)
    This text is perfectly centered vertically and horizontally.
  \end{textblock}    
\end{frame}

\end{document}

введите описание изображения здесь

решение2

Это не отвечает на ваш главный вопрос, хотя я подозреваю, что есть некоторые скрытые "поля" для заголовков, верхних и нижних колонтитулов и т. д., которые не видны в пустом фрейме. В любом случае, если вы настаиваете на том, чтобы какой-то текст был идеально отцентрирован, вы всегда можете использовать TiKZ.

\documentclass{beamer}
\usepackage{tikz}

\begin{document}
\begin{frame}{title}
        This text is not perfectly centered vertically.
        \begin{tikzpicture}[overlay, remember picture] \node[anchor=center,draw] at (current page.center) {This text is perfectly centered vertically and horizontally.};
        \draw (current page.north west)--(current page.south east) (current page.south west)--(current page.north east);
        \end{tikzpicture}
\end{frame}
\end{document}

введите описание изображения здесь

Связанный контент