
Considere el siguiente MWE:
\documentclass[
a4paper
]{article}
\usepackage{pdfpages}
\newcount\firstmaxpages
\newcount\secondmaxpages
\newcount\curpage
\newcount\untilpage
\makeatletter
\newif\if@pdfdingsSecondFin
\newcount\@pdfdingsPages
\newcommand*\@incpdfdings[5][]{%
\includepdf[
nup = #5,
pages = {#2-#3},
#1
]{#4}}
\newcommand*\@@incpdfdings{}%
\def\@@incpdfdings#1x#2;{%
\@pdfdingsPages=#1%
\multiply\@pdfdingsPages by #2%
\advance\@pdfdingsPages by -1%
}
\newcommand*\incpdfdings[4][]{%
\ifx\relax#1\relax%
\pdfximage{#3}%
\firstmaxpages=\pdflastximagepages%
\pdfximage{#4}%
\secondmaxpages=\pdflastximagepages%
\ifnum\firstmaxpages<\secondmaxpages%
\@latex@error{incpdfdings: Fail!}{}%
\fi%
\else%
\firstmaxpages=#1%
\fi%
\curpage=0%
\@@incpdfdings#2;%
\loop\ifnum\firstmaxpages>\curpage%
\advance\curpage by 1%
\untilpage=\numexpr\curpage+\@pdfdingsPages\relax%
\ifnum\untilpage>\firstmaxpages%
\untilpage=\firstmaxpages%
\fi%
\@incpdfdings[frame=true]{\the\curpage}{\the\untilpage}{#3}{#2}%
\ifnum\secondmaxpages>\untilpage\else%
\untilpage=\secondmaxpages%
\fi%
\if@pdfdingsSecondFin\else%
\@incpdfdings{\the\curpage}{\the\untilpage}{#4}{#2}%
\fi%
\ifnum\secondmaxpages=\untilpage%
\@pdfdingsSecondFintrue%
\fi%
\advance\curpage by \@pdfdingsPages%
\repeat%
}
\makeatother
\begin{document}
\incpdfdings{3x6}%
{A.pdf}%
{B.pdf}
\end{document}
Supongamos que tenemos dos archivos PDF con el nombre A.pdf
y B.pdf
en el mismo directorio que el .tex
archivo con el código anterior. Si compilo el código usando pdflatex
todo está bien, pero si compilo usando lualatex
, aparece el siguiente mensaje de error:
\incpdfdings ...>\ifx \relax #1\relax \pdfximage
{#3}\firstmaxpages =\pdfla...
l.68 {B.pdf}
Pregunta
¿Cómo cambio el código anterior para poder compilarlo usando el lualatex
motor?
Actualizar
Intenté eliminar todas las %
s según la sugerencia de David. ¿Lo he hecho bien?
\newcommand*\@incpdfdings[5][]{%
\includepdf[
nup = #5,
pages = {#2-#3},
#1
]{#4}}
\newcommand*\@@incpdfdings{}%
\def\@@incpdfdings#1x#2;{%
\@pdfdingsPages=#1
\multiply\@pdfdingsPages by #2
\advance\@pdfdingsPages by -1
}
\newcommand*\incpdfdings[4][]{%
\ifx\relax#1\relax
\saveimageresource{#3}%
\firstmaxpages=\lastsavedimageresourcepages
\saveimageresource{#4}%
\secondmaxpages=\lastsavedimageresourcepages
\ifnum\firstmaxpages<\secondmaxpages
\@latex@error{incpdfdings: Der er ikke nok forsider.}{}%
\fi
\else
\firstmaxpages=#1
\fi
\curpage=0
\@@incpdfdings#2;%
\loop\ifnum\firstmaxpages>\curpage
\advance\curpage by 1
\untilpage=\numexpr\curpage+\@pdfdingsPages\relax
\ifnum\untilpage>\firstmaxpages
\untilpage=\firstmaxpages
\fi
\@incpdfdings[frame=true]{\the\curpage}{\the\untilpage}{#3}{#2}%
\ifnum\secondmaxpages>\untilpage\else
\untilpage=\secondmaxpages
\fi
\if@pdfdingsSecondFin\else
\@incpdfdings{\the\curpage}{\the\untilpage}{#4}{#2}%
\fi
\ifnum\secondmaxpages=\untilpage
\@pdfdingsSecondFintrue
\fi
\advance\curpage by \@pdfdingsPages
\repeat
}
Respuesta1
Podrías usar \usepackage{luatex85}
el cual define la mayoría de los nombres de pdftex en términos de primitivas luatex.