Stört es niemanden, dass die Beamer-Klasse den Inhalt von Frames nicht perfekt vertikal zentriert?
Unten ist etwas mehr Platz als oben. Kann jemand eine Lösung anbieten, wie man einen perfekt zentrierten Inhalt erreicht und, was noch wichtiger ist, dies zur globalen Einstellung macht?
Unten ist ein (triviales) MWE.
\documentclass{beamer}
\begin{document}
\begin{frame}
This text is not perfectly centered vertically.
\end{frame}
\end{document}
Antwort1
Dertextpos
Paketermöglicht Ihnen, Ihren Text an jeder beliebigen Position auf der Seite zu platzieren. In beamer
der Klasse muss das Paket mit der overlay
Option geladen werden, dies ist in anderen Dokumentklassen nicht der Fall. Ich habe die showboxes
Option auch aktiviert, nur um mit dem von berechneten perfekten Mittelpunkt zu vergleichen tikz
. In Ihrem endgültigen Dokument können Sie die showboxes
Option entfernen oder den \textblockrulecolor{white}
Befehl hinzufügen, um die Kästchen auszublenden. Der letztere Befehl führte meiner Erfahrung nach zu einer genaueren Positionierung. Aber ich habe keine Ahnung, warum das so war.
\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}
Antwort2
Dies beantwortet Ihre Hauptfrage nicht, obwohl ich vermute, dass es einige versteckte „Ränder“ für Titel, Kopfzeilen, Fußzeilen usw. gibt, die in einem leeren Rahmen nicht sichtbar sind. Wenn Sie jedoch darauf bestehen, dass ein Text perfekt zentriert ist, können Sie immer verwenden 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}