使用该pdfpages
包,我可以做类似的事情来合并文档的某些页面。
\includepdf[page={1,1,1,2,2,10,10,10,10},nup=1x2]{mypdf.pdf}
在这种情况下,指定的排列包括 3 次第 1 页、2 次第 2 页和 4 次第 10 页。
有没有更好的语法,而不是重复输入我想要的页面。例如{*{3}{1},*{2}{2},*{4}{10}}
?
我尝试使用此答案中的重复命令:https://tex.stackexchange.com/a/16192/4011像这样:
\documentclass[a4paper]{article}
\usepackage{pdfpages}
\usepackage{expl3}
\ExplSyntaxOn
\cs_new_eq:NN \Repeat \prg_replicate:nn
\ExplSyntaxOff
\makeatletter
\begin{document}
\includepdf[page={\Repeat{3}{1,}2},nup=1x2]{mypdf}
\end{document}
但最终结果是ERROR: Package pdfpages Error: Cannot find file
1,1,1,2''
我猜这是一个扩展问题。
答案1
你可以试试
\makeatletter
\define@key{pdfpages}{pages}{\AM@CheckValue{pages}{#1}%
\edef\AM@pagestemp{#1}}%\edef instead of \def
但是如果 pages 的值包含不喜欢扩展的内容,则可能会导致问题。