Seitenzahl fehlt auf der Seite nach Änderung der Papiergröße in pdflatex

Seitenzahl fehlt auf der Seite nach Änderung der Papiergröße in pdflatex

Ich habe ein PDFLatex-Dokument, in dem ich die Papiergröße nur für eine Seite ändere, um ein großes Bild anzuzeigen. Die Seitenzahl wird auf der größeren Seite absichtlich weggelassen. Ich habe Makros erstellt, um den Wechsel zur größeren Seite und auch den Wechsel zurück durchzuführen.

Auf der ersten Seite in normaler Größe nach dem Bild fehlt eine Seitenzahl, aber die nachfolgenden Seiten scheinen einwandfrei zu funktionieren. Wenn ich nicht manuell einen Seitenumbruch mit einfüge \clearpage, scheint die Seite außerdem bodenlos zu sein und mein Text geht endlos weiter, unsichtbar über den unteren Seitenrand hinaus (dies wird im MWE unten nicht gezeigt).

Hier ist ein minimales funktionierendes Beispiel. Irgendeine Idee, was hier vor sich geht?

\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}

Antwort1

Irgendwie sind Ihre Texthöhenparameter zum falschen Zeitpunkt wirksam, sodass LaTeX glaubt, die dritte Seite sei viel länger als sie ist. Die Seitenzahl ist da, sie steht nur viel weiter unter der physischen Seite (wie Sie auch beim Text festgestellt haben). Sie können dies beheben, indem Sie die Makros in die landscapeUmgebung einfügen. Damit die Änderung der Seitengröße wirksam wird, müssen Sie das \begingroupund \endgroup-Paar entfernen und stattdessen die von der Umgebung erstellte Gruppe nutzen landscape. Dies führt jedoch dazu, dass der Text auf der großen zweiten Seite schlecht platziert ist, es sei denn, Sie setzen auch den \hsizeParameter. Es gibt viele dieser Parameter, die interagieren, weshalb es schwierig ist, Seitenlayouts manuell in LaTeX zu erstellen. Im Allgemeinen würde ich geometrystattdessen die Verwendung des Pakets empfehlen, aber soweit ich das beurteilen kann, scheint es nicht mit dem Fall umgehen zu können, dass einige Seiten eine andere Größe haben.

\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}

verwandte Informationen