我觉得无法解决这个问题有点愚蠢,但我找不到一种方法将以下命令(用于获取 pdf 中的页数:)转换\pdfximage{mypdf.tex} \the\pdflastximagepages
为实际命令,以便我可以在循环\pdfximage{images.pdf}
中写入\foreach
。如果有人可以向我解释为什么前两个示例有效而最后一个无效,我会非常感兴趣。
谢谢!
梅威瑟:
\documentclass{beamer}
\usepackage{tikz}
\newcommand{\nbpagepdf}[1]{\pdfximage{#1}\the\pdflastximagepages}
\begin{document}
\begin{frame}[fragile]
%% Ok:
The number of pages is: \nbpagepdf{images.pdf} !
%% Ok:
\pdfximage{images.pdf}
\foreach \ov in {1,...,\the\pdflastximagepages}{
\includegraphics<\ov>[page=\ov]{images.pdf}
}
%% Not ok:
\foreach \ov in {1,...,\nbpagepdf{images.pdf}}{
\includegraphics<\ov>[page=\ov]{images.pdf}
}
\end{frame}
\end{document}
错误:
ERROR: Missing number, treated as zero.
--- TeX said ---
<to be read again>
\pdfximage
l.10 }
答案1
定义一个合适的宏,首先执行\pdfximage
。
\documentclass{beamer}
\usepackage{tikz}
\newcommand{\includepdfpages}[1]{%
\pdfximage{#1}%
\foreach \ov in {1,...,\the\pdflastximagepages}{%
\includegraphics<\ov>[page=\ov]{#1}%
}%
}
\begin{document}
\begin{frame}
\includepdfpages{tobiasimages.pdf}
\end{frame}
\end{document}
该文件有十张图像,结果如下: