![如何使用 pdfpages 仅包含奇数页或偶数页?](https://linux22.com/image/448136/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20pdfpages%20%E4%BB%85%E5%8C%85%E5%90%AB%E5%A5%87%E6%95%B0%E9%A1%B5%E6%88%96%E5%81%B6%E6%95%B0%E9%A1%B5%EF%BC%9F.png)
有没有更好的解决方案来包含 pdf 文件的所有奇数/偶数页?
\documentclass{scrartcl}
\usepackage{pdfpages}
\begin{document}
\includepdf[page={1,3,5,7,9,11,13,15,17,19,21,23,25,27
%\includepdf[page={2,4,6,8,10,12,14,16,18,20,22,24,26,28
}]{bCh03.pdf}
\end{document}
答案1
我不知道 pdfpages 包中是否有直接的解决方案。不过,你可以用循环来实现。
首先,您需要提取页数(参见此答案来自 Symbol 1) 经过
\pdfximage{bCh03.pdf}
这将存储宏中的页数\pdflastx图像页面,这是终止标准所必需的。接下来你需要一个循环。为此,创建迭代器整数像这样
\newcounter{int}
\setcounter{int}{-1}
然后启动循环并仅插入与计数器对应的页面
\whiledo{\not{\value{int} > \pdflastximagepages}}{
\includepdf[page={\theint}]{bCh03.pdf}
\addtocounter{int}{2}
}
如果只想添加偶数页,请初始化整数为 2。如果您希望每三页出现一次,则将计数器增加 3。以这种方式,您可以简单地定义自己的宏
\documentclass{scrartcl}
\usepackage{pdfpages}
\newcounter{int}
\newcommand{\myincludepdf}[3]{
\pdfximage{#1}
\setcounter{int}{#2}
\whiledo{\not{\value{int} > \pdflastximagepages}}{
\includepdf[page={\theint}]{#1}
\addtocounter{int}{#3}}
}
\begin{document}
\myincludepdf{bCh03.pdf}{1}{2}
\end{document}