我正在排版讲义(课堂)作为我的主要文档。我还使用和 book
从该文档创建补充幻灯片,主要使用讲义中的图表放在幻灯片上以便在课堂上进行进一步解释。beamer
beamerarticle
为了更好的可访问性,我想打印原始讲稿页码该图的幻灯片上会显示该图的页码 - 这样人们在看幻灯片时就可以轻松地在笔记中找到它。但我不知道如何在幻灯片中访问讲义的页码,因为据我所知,基本上所有内容\begin{frame}...\end{frame}
都会被忽略,但选项ignorenonframetext
处于活动状态beamerarticle
。
这是一个由三个文档组成的 MWE:1. 两个版本都使用的正文,称为body.tex
。
\mode*
\chapter{First Chapter}
\section{This is the first section}
\lipsum[1-4]
\section{This is the second section}
\lipsum[1-4]
\begin{frame}
\only<presentation>{\frametitle{\insertsection}}
\begin{figure}[htb]
\centering
\includegraphics[width=0.5\linewidth]{example-image-a}
\caption{Example image. \only<presentation>{This image sits on page \pageref{fig:A} of the book.}}
\label{fig:A}
\end{figure}
\end{frame}
\textbf{Figure \ref{fig:A} sits on page \pageref{fig:A} of the book.}
\lipsum[1]
- 主要文件演讲笔记利用
body.tex
来生成一本书:
\documentclass[
,oneside
,openany
,a4paper]{book}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{beamerarticle}
\title{This is the Booktitle}
\author{Author Name}
\begin{document}
\maketitle
\input{MWE_body.tex}
\end{document}
- 主要文件幻灯片使用相同的方式
body.tex
生成演示文稿,并且仅通过ignorenonframetext
中的选项获取框架环境beamer
。当然,幻灯片的页码会弄乱图表标题中对讲义的页面引用。
\documentclass[ignorenonframetext]{beamer}
\usepackage{graphicx}
\usepackage{lipsum}
\title{Presentation Title}
\author{Author Name}
\begin{document}
\begin{frame}
<presentation>\titlepage
\end{frame}
\mode<all>{\input{MWE_body.tex}}
\end{document}
所以基本上我正在寻找一种方法来获得书中图表的页码,并将其显示在幻灯片中。这能做到吗?任何帮助都值得感激!
答案1
使用该xr-hyper
包,您可以将书籍文档中的标签导入到演示文稿中,并使用您选择的前缀,然后使用带前缀的标签进行演示文稿专用命令。请注意,您需要hyperref
在书籍文档中使用该包才能完成此操作,并且需要在编译演示文稿之前编译书籍文档。
\mode*
\chapter{First Chapter}
\section{This is the first section}
\lipsum[1-4]
\section{This is the second section}
\lipsum[1-4]
\begin{frame}
\only<presentation>{\frametitle{\insertsection}}
\begin{figure}[htb]
\centering
\includegraphics[width=0.5\linewidth]{example-image-a}
\caption[example]{Example image. \only<presentation>{This image sits on page \pageref{book-fig:A} of the book.}}
\label{fig:A}
\end{figure}
\end{frame}
Figure \ref{fig:A} sits on page \pageref{fig:A} of the book.
\lipsum[1]
\RequirePackage{xr-hyper}
\documentclass[ignorenonframetext]{beamer}
\usepackage{graphicx}
\usepackage{lipsum}
\externaldocument[book-]{document}
\title{Presentation Title}
\author{Author Name}
\begin{document}
\begin{frame}
<presentation>\titlepage
\end{frame}
\mode<all>{\input{body.tex}}
\end{document}
\documentclass[
,oneside
,openany
,a4paper]{book}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{beamerarticle}
\usepackage{hyperref}
\title{This is the Booktitle}
\author{Author Name}
\begin{document}
\maketitle
\input{body.tex}
\end{document}