Как можно последовательно пронумеровать только некоторые страницы документа?

Как можно последовательно пронумеровать только некоторые страницы документа?

Следующий код верстает 12-страничный документ; текст отображается только на каждой второй странице, а между двумя текстовыми страницами находится пустая страница:

\documentclass{article}
\usepackage{atbegshi}
\usepackage{lipsum}

\makeatletter
\AtBeginShipout{%
  \ifodd\c@page
    \begingroup
      \AtBeginShipoutOriginalShipout\box\AtBeginShipoutBox
      \global\AtBegShi@Discardedtrue
      \mbox{}\thispagestyle{empty}\clearpage
    \endgroup
  \else
  \fi%
}
\makeatother

\begin{document}

\lipsum[1-30]

\end{document}

Теперь я пытаюсь последовательно пронумеровать страницы с текстом; с кодом выше страницы с текстом пронумерованы 1,3,5,... но я бы хотел, чтобы они были 1,2,3,... Я сделал несколько попыток, но ни одна из них не дала желаемого результата. Как мне добиться последовательной нумерации?

Идея состоит в том, чтобы обернуть это в команду, которая позволит изменять поведение потока текста внутри группы: при вызове команда приведет к тому, что текст будет набран на каждой второй странице, но при этом сохранится последовательная нумерация страниц с текстом; после завершения группы текст и нумерация должны вернуться к своему обычному поведению.

решение1

Кажется, это работает для меня. Хитрость в том, чтобы использовать другой счетчик для количества отправлений вместо страниц.

\documentclass{article}
\usepackage{changepage}
\usepackage{etoolbox}
\usepackage{atbegshi}
\usepackage{lipsum}

\newcounter{mypage}

\makeatletter
\AtBeginShipoutInit{\setcounter{mypage}{0}}
\AtBeginShipout{
  \ifnumodd{\value{mypage}}{
    \AtBeginShipoutOriginalShipout\box\AtBeginShipoutBox
    \addtocounter{page}{-1}
  }{
    \mbox{}\thispagestyle{empty}\clearpage
  }
  \addtocounter{mypage}{1}
}

\makeatother

\begin{document}

First page \pageref{test}
Last page \pageref{test2}

\label{test}
\lipsum[1-30]
\label{test2}

\end{document}

Связанный контент