pdflatex 中紙張尺寸變更後頁面中缺少頁碼

pdflatex 中紙張尺寸變更後頁面中缺少頁碼

我有一個 pdflatex 文檔,其中我切換紙張尺寸(僅一頁)以顯示大圖像。大頁面中故意省略了頁碼。我建立了巨集來執行到較大尺寸頁面的切換,也用於切換回來。

圖像後的第一個正常大小的頁面缺少頁碼,但後續頁面似乎工作正常。另外,如果我不使用 手動插入分頁符\clearpage,頁面似乎是無底的,我的文字會繼續顯示,在頁面底部之外不可見(這在下面的 MWE 中沒有演示)。

這是一個最小的工作範例。知道這是怎麼回事嗎?

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

答案1

不知何故,您的文字高度參數在錯誤的時間生效,因此 LaTeX 認為第三頁比實際長得多。頁碼就在那裡,它就在實體頁面landscape下方(正如您在文字中觀察到的那樣)。為了使頁面大小的變更生效,您需要消除\begingroup\endgroup對,並利用landscape環境建立的群組。但是,這會導致大第二頁上的文字位置錯誤,除非您也設定了該\hsize參數。有許多這些交互作用的參數,這就是為什麼在 LaTeX 中手動進行頁面佈局很困難。一般來說,我建議使用該geometry包,但據我所知,它似乎無法處理某些頁面大小不同的情況。

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

相關內容