使用 pgfpages 制作讲义中的页眉和页脚

使用 pgfpages 制作讲义中的页眉和页脚

我正在尝试打印出从此代码中获得的讲义中的页码/总页数:这是我的 MWE:

\documentclass[11 pt, handout,xcolor=pdftex,x11names,table]{beamer}
\mode<beamer>{\usetheme{CambridgeUS}}
\usepackage{pgfpages}
\pgfpagesuselayout{2 on 1}[letterpaper,border shrink=10mm]
\pgfpageslogicalpageoptions{1}{border code=\pgfusepath{stroke}}
\pgfpageslogicalpageoptions{2}{border code=\pgfusepath{stroke}}

\begin{document}

\begin{frame}
\frametitle{First}
\begin{itemize}
\item check1
\item check 2
\end{itemize}
\end{frame}

\begin{frame}
Text 1
\end{frame}

\end{document} 

pDfpages我很清楚我可以使用讲义中的实际页码(和总页数)。但是,使用的问题pDfpages在于它不保留原始文档的书签。我想知道是否可以使用pGfpages或任何其他包来实现这一点?

答案1

这是一个可能的解决方案,使用lastpage包来获取总页数和background放置文本的包<current page> of <total pages>;我只计算了讲义的物理(而非逻辑)页面,但如果需要,可以轻松更改。我选择将文本放在顶部中央,但这也可以轻松更改:

\documentclass[11 pt, handout,xcolor=pdftex,x11names,table]{beamer}
\mode<beamer>{\usetheme{CambridgeUS}}
\usepackage{pgfpages}
\usepackage{lastpage}
\usepackage{refcount}
\usepackage{ifthen}
\pgfpagesuselayout{2 on 1}[letterpaper,border shrink=10mm]
\pgfpageslogicalpageoptions{1}{border code=\pgfusepath{stroke}}
\pgfpageslogicalpageoptions{2}{border code=\pgfusepath{stroke}}

\usepackage{background}
\SetBgAngle{0}
\SetBgScale{1}
\SetBgOpacity{1}
\SetBgColor{black}
\SetBgPosition{current page.north}
\SetBgVshift{10pt}
\SetBgContents{}
\makeatletter
\AddEverypageHook{%
\ifthenelse{\isodd{\thepage}}%
{\SetBgContents{\the\numexpr\thepage/2\relax\ of \the\numexpr\getpagerefnumber{LastPage}/2\relax}}%
{\SetBgContents{}}%
\bg@material}
\makeatother

\begin{document}

\begin{frame}
\frametitle{First}
\begin{itemize}
\item check1
\item check 2
\end{itemize}
\end{frame}

\begin{frame}
Text 1
\end{frame}

\begin{frame}
Text 2
\end{frame}

\begin{frame}
Text 3
\end{frame}

\begin{frame}
Text 4
\end{frame}

\end{document}

在此处输入图片描述

相关内容