Compilar código de páginas pdf con LuaLaTeX

Compilar código de páginas pdf con LuaLaTeX

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.pdfy B.pdfen el mismo directorio que el .texarchivo con el código anterior. Si compilo el código usando pdflatextodo 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 lualatexmotor?

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.

información relacionada