来自变量的文件名(在 pdfpages 中)-可能吗?

来自变量的文件名(在 pdfpages 中)-可能吗?

我正在尝试将两个 PDF 合并为一个,并交替页面。不幸的是,pdfpages 中没有可以处理此问题的选项,因此我使用 \includepdfmerge 并指定要手动添加的页面:

\documentclass{article}

\usepackage[final]{pdfpages}

\begin{document}

\includepdfmerge[nup=2x5,noautoscale=true,offset=-1.0mm 1mm,delta=1cm 0in]{A.pdf,1,B.pdf,1,A.pdf,2,B.pdf,2,A.pdf,3,B.pdf,3,A.pdf,4,B.pdf,4,}
\end{document} 

当然,我想让这变得更容易,所以我想我会创建一个 \textstring 然后插入:

\documentclass{article}

\usepackage[final]{pdfpages}
\usepackage{ifthen}

\begin{document}

\newcommand{\textstring}{A.pdf,1,}

\includepdfmerge[nup=2x5,noautoscale=true,offset=-1.0mm 1mm,delta=1cm 0in]{\textstring}
\end{document}

然而,这并不奏效,我得到了

软件包 pdfpages 错误:无法找到文件“A.pdf,1,”

那么这不可能吗?我是否忽略了一些显而易见的东西?

答案1

似乎(我并不知道这一点)pdfpages 只是默认将其添加到文件末尾。所以我找到了这个解决方案:https://latex.org/forum/viewtopic.php?t=10965对我来说很有用。谢谢大家!

答案2

请注意中的额外括号\textstring

\documentclass{article}

\usepackage[final]{pdfpages}
\usepackage{ifthen}

\begin{document}

\newcommand{\textstring}{test.pdf,1,test2.pdf,1}%
\edef\textstring{{\textstring}}

\includepdfset{nup=2x5,offset=-1.0mm 1mm,delta=1cm 0in}%
\expandafter\includepdfmerge\textstring
\end{document}

也可以使用

\expandafter\includepdfmerge\expandafter{\textstring}

\def而不是用或添加额外的括号\edef

相关内容