有没有办法将一些幻灯片合并到我的 Beamer 演示文稿中的现有幻灯片中?
比如说,我想将文件 A(Beamer PDF 文件)中的幻灯片 2 放入我的 Beamer 演示文稿中,可以这样做吗?
PS:file A
是 PDF 并且没有边界框。
答案1
要将另一个演示文稿中的幻灯片导入beamer
为“图片”,您可以使用pdfpages
.你必须\setbeamercolor{background canvas}{bg=}
正如这个答案所解释的那样因为否则只会显示白色框架:
\documentclass{beamer}
\usepackage{pdfpages}
\begin{document}
\begin{frame}
Content
\end{frame}
{
\setbeamercolor{background canvas}{bg=}
\includepdf[pages=3]{filea.pdf}
}
\end{document}
但是,如果您在现有演示文稿中使用了标题或脚注,甚至使用了不同的主题,那么这可能不太合适。在这种情况下,更好的解决方案是实际导入现有演示文稿的源代码,这可以使用docmute
包与命令结合\againframe
:
假设这是您现有的演示文稿:您需要使用框架环境的选项filea.tex
为要导入的幻灯片命名,如下所示:label
\documentclass{beamer}
\begin{document}
\begin{frame}[label=myframe]
Frame to be included
\end{frame}
\end{document}
然后您可以在新的演示文稿中使用此代码:
\documentclass{beamer}
\usepackage{docmute}
\makeatletter
\newcommand*{\loadpresentation}[1]{{\beamer@inlecturefalse\input{#1}}}
\makeatother
\begin{document}
\loadpresentation{filea.tex}
\begin{frame}
The new presentation
\end{frame}
\againframe{myframe}
\end{document}
发出\loadpresentation{filea.tex}
导入现有演示文稿中的帧而不显示它们。您可以使用\againframe
在中选择的标签将它们插入到任何需要的地方filea.tex
。该命令\loadpresentation
应该在某个地方使用后 \begin{document}
(但当然,这是在您实际包含该演示文稿中的一帧之前)。
这与您实际从现有演示文稿中复制框架的源代码大致相同,因此覆盖等内容都会被接管。
答案2
如果你想把某个目标的“缩略图”beamer
PDFfileA
在您的源中,您可以使用
\includegraphics[page=<n>,width=<len>]{fileA}
其中<n>
是幻灯片的绝对页码fileA.pdf
,<len>
是导入页面的宽度。您还可以使用 提供的其他选项缩放它graphicx
.默认beamer
加载graphicx
,因此功能已经可用。
如果你想在源文件中放置某个目标beamer
PDF的“整页”,你可以使用fileA
\begin{frame}
\vspace*{-1pt}
\makebox[\linewidth]{\includegraphics[page=<n>,width=\paperwidth]{fileA}}
\end{frame}
其中<n>
是幻灯片的绝对页码fileA
。幻灯片被拉伸以适合\paperwidth
,因此应该完全覆盖源演示文稿。
需要进行垂直校正 ( 1pt
) 来保持幻灯片之间的显示一致。
答案3
我最终使用了非常基本的解决方案。
如何将现有多页 pdf(例如文件 A)中的幻灯片合并到我的投影仪中?
@windows,cutepdf 从文件 A 打印许多单幻灯片 pdf B。
@ubuntu,pdftops 为每个 pdf B 创建每张幻灯片 eps C。
然后,将这些 eps C 加载到乳胶中。