O que há de errado nesta aritmética com loop?

O que há de errado nesta aritmética com loop?

Quero fazer um loop de figuras 4x2 em muitas páginas no formato beamer. A configuração do número de página falha page=\numexp \ii * 2 \relax. Código

\documentclass{beamer}
\usepackage{pgffor}    
\usepackage{graphicx}                                                          
\usepackage{subcaption} % http://tex.stackexchange.com/a/37597/13173

\begin{document}
\begin{frame}[allowframebreaks]
    \foreach \ii in {1,...,4}{
    \begin{figure}
    \centering% not \center!
    \begin{subfigure}{0.5\textwidth}
      \includegraphics[scale=0.2, page=\ii]{{Rplots.bland.altman.1}.pdf}
      \caption{Image \ii.}
    \end{subfigure}
    \begin{subfigure}{0.5\textwidth}
      \includegraphics[scale=0.2, page=\numexp \ii * 2 \relax]{{Rplots.bland.altman.1}.pdf}
      \caption{Image \ii.}
    \end{subfigure}
    \end{figure}
    }
\end{frame}
\end{document}

A saída não faz sentido para mim; tentar resolvê-lo \newcounter{ii}não ajuda.

! Undefined control sequence.
\GPT@page ->\numexp 
                    \ii * 2 \relax 
l.23 \end{frame}

Saída com\the\numexp ...

...
? 
! You can't use `the character 1' after \the.
\ii ->1

l.23 \end{frame}

? 
! Missing \endcsname inserted.
<to be read again> 
                   \relax 
l.23 \end{frame}

? 
! Missing { inserted.
<to be read again> 
                   *
l.23 \end{frame}

? 
! Missing \endcsname inserted.
<to be read again> 
                   \relax 
l.23 \end{frame}

TeXLive: 2016
SO: Debian 8.5

Responder1

Eu converti de beamerpara article, apenas para poder usar demoo modo de graphicx. Mas havia dois problemas, como eu disse no meu comentário:

  1. \numexpr, not \numexpé a sintaxe correta e

  2. você precisa \the\numexprpara torná-lo digerível por algo que procura uma string. (para ver isso, tente gerar \numexpr 0\relaxum documento versus \the\numexpr 0\relax)

Como observou o OP, definir a subfigurelargura 0.45\textwidthpermite dois algarismos por linha.

Aqui está o MWE.

\documentclass{article}%{beamer}
\usepackage[demo]{graphicx}
\usepackage{pgffor,subcaption}                                                            

\begin{document}
%\begin{frame}[allowframebreaks]
    \foreach \ii in {1,...,4}{
    \begin{figure}
    \centering% not \center!
    \begin{subfigure}{0.45\textwidth}
      \includegraphics[scale=0.2, page=\ii]{{Rplots.bland.altman.1}.pdf}
      \caption{Image \ii.}
    \end{subfigure}
    \begin{subfigure}{0.45\textwidth}
      \includegraphics[scale=0.2, page=\the\numexpr \ii * 2 \relax]{{Rplots.bland.altman.1}.pdf}
      \caption{Image \ii.}
    \end{subfigure}
    \end{figure}
    }
%\end{frame}
\end{document}

insira a descrição da imagem aqui

informação relacionada