Рассмотрим такой пример:
\documentclass{beamer}
\AtBeginSection[]{
\begin{frame}
\vspace{3cm}
\centering
\begin{beamercolorbox}[sep=8pt,center,shadow=true,rounded=true]{title}
\Large\insertsectionhead\par%
\end{beamercolorbox}
\vfill
\end{frame}
}
\AtBeginSubsection[]{
\begin{frame}
\vspace{3cm}
\centering
\begin{beamercolorbox}[sep=8pt,center,shadow=true,rounded=true]{title}
\Large\insertsectionhead\par%
\vspace{0.5cm}
\large\insertsubsectionhead\par%
\end{beamercolorbox}
\vfill
\end{frame}
}
\begin{document}
\section{Section 1}
\subsection{Subsection 1 A}
\end{document}
Я использую \vspace
с намерением зафиксировать позиции заголовков разделов и подразделов. Однако при просмотре в режиме слайда заголовок раздела меняет позицию при переходе с титульного листа раздела на титульный лист подраздела.
Как решить?
решение1
Проблема в том, что по умолчанию содержимое фрейма вертикально центрировано и должно быть выровнено по верху. Этого можно добиться с помощью опции, [t]
заданной глобально, как в , \documentclass[t]{beamer}
или индивидуально для конкретного фрейма, как в \begin{frame}[t]
.
МВЭ
\documentclass[t]{beamer}
\AtBeginSection[]{
\begin{frame}
\vspace{3cm}
\centering
\begin{beamercolorbox}[sep=8pt,center,shadow=true,rounded=true]{title}
\Large\insertsectionhead\par%
\end{beamercolorbox}
%\vfill
\end{frame}
}
\AtBeginSubsection[]{
\begin{frame} % or \begin{frame}[t] (if not set globally)
\vspace{3cm}
\centering
\begin{beamercolorbox}[sep=8pt,center,shadow=true,rounded=true]{title}
\Large\insertsectionhead\par%
\vspace{0.5cm}
\large\insertsubsectionhead\par%
\end{beamercolorbox}
%\vfill
\end{frame}
}
\begin{document}
\section{Section 1}
\subsection{Subsection 1 A}
\end{document}