
Tengo un documento pdflatex en el que cambio el tamaño del papel, solo para una página, para mostrar una imagen grande. El número de página se omite intencionalmente en la página más grande. Creé macros para realizar el cambio a la página de mayor tamaño y también para regresar.
A la primera página de tamaño normal después de la imagen le falta un número de página, pero las páginas siguientes parecen funcionar bien. Además, si no inserto manualmente un salto de página con \clearpage
, parece que la página no tiene fondo y mi texto sigue y sigue, invisible más allá del final de la página (esto no se demuestra en el MWE a continuación).
Aquí hay un ejemplo de trabajo mínimo. ¿Alguna idea de lo que está pasando aquí?
\documentclass{article}
\usepackage{pdflscape}
% Macros for changing paper size
\newcommand{\startPaperSizeB}{%
\clearpage
\begingroup
\setlength{\pdfpagewidth}{11in}
\setlength{\pdfpageheight}{17in}
\setlength{\paperwidth}{\pdfpagewidth}
\setlength{\paperheight}{\pdfpageheight}
\setlength{\textwidth}{526pt}% This one matters
\setlength{\textheight}{984pt}% This one matters
\pagestyle{empty}% No page number
}
\newcommand{\stopPaperSizeB}{\endgroup \clearpage}% The order of these commands makes no difference
\begin{document}
Some stuff on the first page here.
\startPaperSizeB
\begin{landscape}
Text on second page, intended for large image.
\end{landscape}
\stopPaperSizeB
Why no page number here?
\clearpage
Page numbers start working here, no problem.
\end{document}
Respuesta1
De alguna manera, los parámetros de altura del texto están vigentes en el momento equivocado, por lo que LaTeX cree que la tercera página es mucho más larga de lo que es. El número de página está ahí, justo debajo de la página física (como también observó con el texto). Puede solucionar este problema colocando las macros dentro del landscape
entorno. Para que el cambio en el tamaño de la página surta efecto, debe eliminar el par \begingroup
y \endgroup
y, en su lugar, aprovechar el grupo creado por el landscape
entorno. Sin embargo, esto provoca que el texto de la segunda página grande quede mal colocado, a menos que también establezca el \hsize
parámetro. Hay muchos de estos parámetros que interactúan, por lo que es difícil realizar diseños de página manualmente en LaTeX. En general, recomendaría usar el geometry
paquete en su lugar, pero no parece que pueda manejar el caso de que algunas páginas tengan un tamaño diferente, hasta donde yo sé.
\documentclass{article}
\usepackage{pdflscape}
% Macros for changing paper size
\newcommand{\startPaperSizeB}{%
\setlength{\pdfpagewidth}{11in}
\setlength{\pdfpageheight}{17in}
\setlength{\paperwidth}{\pdfpagewidth}
\setlength{\paperheight}{\pdfpageheight}
\setlength{\textwidth}{526pt}% This one matters
\setlength{\textheight}{984pt}% This one matters
\setlength{\hsize}{\textheight}
\pagestyle{empty}% No page number
}
\newcommand{\stopPaperSizeB}{}
\begin{document}
Some stuff on the first page here.
\begin{landscape}
\startPaperSizeB
Text on second page, intended for large image.
\stopPaperSizeB
\end{landscape}
Page number here!
\clearpage
Page numbers still working here, no problem.
\end{document}