Я использую pgfpages
для создания раздаточных материалов 4up. Раздаточный материал очень длинный (на целый семестр), и я хотел бы начинать новую страницу, когда начинается новая сессия. Я ищу код, который работает как код в книгах, вставляя пустую страницу, когда начинается новая глава, и новая глава начиналась бы не на той странице.
В MWE три слайда, следующие за 2, должны быть пустыми страницами, а сессия 2 должна начинаться в левом верхнем углу на новой странице.
Редактировать:
Что-то вроде этого \cleardoublepage
должно сработать. Но нужно будет посмотреть на счетчик страниц и проверить, сколько пустых страниц нужно вставить до следующей страницы, делимой на четыре. Я не знаю, как делать расчеты в LaTeX. Любая помощь будет оценена.
\def\cleardoublepage{%
\clearpage%
\if@twoside%
\ifodd\c@page%
% do nothing
\else%
\emptypage@emptypage%
\fi%
\fi%
}%
МВЭ:
\documentclass{beamer}
\author{Stefan Müller}
\title{The great test}
\usepackage{pgfpages}
\pgfpagesuselayout{4 on 1}[a4paper, border shrink=5mm, landscape]
\pgfpageslogicalpageoptions{1}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.275\pgfphysicalwidth}{.74\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{2}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.725\pgfphysicalwidth}{.74\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{3}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.275\pgfphysicalwidth}{.26\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{4}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.725\pgfphysicalwidth}{.26\pgfphysicalheight}
}
\begin{document}
\frame{
\maketitle
}
\frame{
0
}
\section{1}
\subtitle{Session 1}
\frame{
\maketitle
}
\frame{1}
\section{2}
\frame{2}
\subtitle{Session 2}
\frame{
\maketitle
}
\section{3}
\frame{3}
\section{4}
\frame{4}
\section{5}
\frame{5}
\end{document}
решение1
Вы можете проверить текущий номер страницы в начале субтитров, а затем вставить пустые страницы по мере необходимости:
\documentclass{beamer}
\author{Stefan Müller}
\title{The great test}
\usepackage{pgfpages}
\pgfpagesuselayout{4 on 1}[a4paper, border shrink=5mm, landscape]
\pgfpageslogicalpageoptions{1}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.275\pgfphysicalwidth}{.74\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{2}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.725\pgfphysicalwidth}{.74\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{3}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.275\pgfphysicalwidth}{.26\pgfphysicalheight}
}
\pgfpageslogicalpageoptions{4}{border code=\pgfusepath{stroke},
% resized height=.65\pgfphysicalheight,
% resized width=.65\pgfphysicalwidth,
center = \pgfpoint{.725\pgfphysicalwidth}{.26\pgfphysicalheight}
}
\usepackage{pgffor}
\pretocmd{\subtitle}{
{
\setbeamertemplate{navigation symbols}{}
\pgfmathparse{int(mod(\thepage,4))}
\let\foo\pgfmathresult
\ifnum\foo=0
\begin{frame}[plain,noframenumbering]
\end{frame}
\fi
\ifnum\foo=2
\begin{frame}[plain,noframenumbering]
\end{frame}
\begin{frame}[plain,noframenumbering]
\end{frame}
\begin{frame}[plain,noframenumbering]
\end{frame}
\fi
\ifnum\foo=3
\begin{frame}[plain,noframenumbering]
\end{frame}
\begin{frame}[plain,noframenumbering]
\end{frame}
\fi
}
}{}{}
\makeatletter
\apptocmd{\beamer@subtitle}{\frame{\maketitle}}{}{}
\makeatother
\begin{document}
\frame{
\maketitle
}
\frame{
0
\pause
abc
}
\section{1}
\subtitle{Session 1}
\frame{1}
\section{2}
\frame{2}
\subtitle{Session 2}
\section{3}
\frame{3}
\section{4}
\frame{4}
\section{5}
\frame{5}
\end{document}