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}

相关内容