Como posso fazer com que o latex mostre uma mensagem de erro se houver muitas páginas?

Como posso fazer com que o latex mostre uma mensagem de erro se houver muitas páginas?

Eu tenho uma série de arquivos PDF que estou combinando. Gostaria de incluir o maior número possível no documento final, mas por razões logísticas não posso ter um total de mais de 50 páginas.

Existe alguma maneira de LaTeXinterromper a compilação e gerar uma mensagem de erro, caso a contagem de páginas exceda esse total?

\documentclass{article}

\usepackage[a4paper]{geometry}
\usepackage{pdfpages}
\usepackage{tikz}
\renewcommand{\contentsname}{My combined file}
\setlength\parindent{0pt}

\begin{document}

\includepdf[pages=-]{cover.pdf}
\includepdf[pages=-]{doc1.pdf}
\includepdf[pages=-]{doc2.pdf}
\includepdf[pages=-]{doc3.pdf}
\includepdf[pages=-]{doc4.pdf}
\includepdf[pages=-]{doc5.pdf}
\includepdf[pages=-]{doc6.pdf}
\includepdf[pages=-]{doc7.pdf}
% More files included here

\end{document}

Responder1

Use o (recém-criado)pagectrlpacote:

\documentclass{article}

\usepackage[range=2-3, report-as=error]{pagectrl}

\usepackage{mwe}

\begin{document}
\lipsum[1-40]
\end{document}

Observe que emitir um fatalerro fará com que o TeX pare, mas esse erro não será lançado até \end{document}. Estarei enviando isso para o CTAN mais tarde esta noite. Até que esteja disponível nas distribuições, basta baixar o styarquivo e colocá-lo no mesmo diretório do seu documento (ou seguir qualquer outro procedimento de instalação manual).

Responder2

Aqui está o máximo que consegui.

\documentclass{article}

\usepackage[a4paper]{geometry}
\usepackage{pdfpages}
%\usepackage{tikz}
\usepackage{everypage}

\AddEverypageHook{\ifnum\value{page}>50 \errmessage{Too many pages}\errorstopmode\fi}

\renewcommand{\contentsname}{My combined file}
\setlength\parindent{0pt}

\begin{document}
\includepdf[pages=-]{minitoc.pdf}

\end{document}

informação relacionada