\newpage 停留在右栏

\newpage 停留在右栏

我正在使用 RevTEX 4.1,其参数如下:

\documentclass[aps,prb,reprint]{revtex4-1}

这给出了一个两列布局,末尾有一个平衡的两列参考书目。我想在参考书目后添加一个附录,其中包含代码清单和图表。在尝试了几种使用\pagebreak、和 的方法\newpage以及\clearpage一些奇怪的切换组合后\onecolumngrid,我发现这个简洁的宏真正获得分页符而不干扰平衡的参考书目。

但是,无论我使用哪种分页符,新页面都会从右列开始。就好像分页符不会重置要排版的列一样。

这是一个已知的行为/问题,只是我无法在 Google 上找到?我是否完全误解了 LaTeX 的双页概念?

PS:奇怪的是,如果我在新页面的标题figure后添加特定大小的section,它似乎会将内容推回到左列。但只有当我选择图形的大小使其适合一列,但其标题不适合(并将其与 一起放置h!)时,才会发生这种情况。

梅威瑟:

\documentclass[aps,prb,reprint]{revtex4-1}
\usepackage{lipsum}

\makeatletter
\newcommand*{\balancecolsandclearpage}{%
  \close@column@grid
  \clearpage
  \twocolumngrid
}
\makeatother

\begin{document}

\lipsum[1-4]

\balancecolsandclearpage

This text is in the right column.

%\begin{figure}[h!]%
%test
%\caption{test}%
%\label{}%
%\end{figure}

\end{document}

在保持列平衡的情况下,任何其他分页方式(如\onecolumngrid\newpage\twocolumngrid)都会导致相同的行为。现在,如果您取消注释该浮动,则将This text is in the right column移动到左列,而浮动将出现在右列中。此行为与我的实际项目略有不同,因为那里只发生在浮动的某个高度。但我认为,如果我能找出为什么正常文本首先继续出现在右列中,那么无论如何都应该可以解决我的问题。

答案1

我不太明白是什么导致了这个问题,但显然这与您的文本是一行而无法容纳在两列中的事实有关,并且不知何故 TeX 决定,因为它必须放在一列中,所以最好放在右边。

只要在该页面上添加第二行,问题就会消失(尽管结果远非最佳,恕我直言:

\documentclass[aps,prb,reprint]{revtex4-1}
\usepackage{lipsum}
\makeatletter
\newcommand*{\balancecolsandclearpage}{%
  \close@column@grid
  \cleardoublepage
  \twocolumngrid
}
\makeatother
\begin{document}
\lipsum[1-4]
\balancecolsandclearpage

This text is in the right column. But I added more text so that at least two 
lines are required.
\end{document}

结果

\clearpage如果在最后一页的内容后面放置一个,问题就解决了:

\documentclass[aps,prb,reprint]{revtex4-1}
\usepackage{lipsum}
\makeatletter
\newcommand*{\balancecolsandclearpage}{%
  \close@column@grid
  \cleardoublepage
  \twocolumngrid
}
\makeatother
\begin{document}
\lipsum[1-4]
\balancecolsandclearpage

This text is in the right column. But I added more text so that at least two 
lines are required.
\clearpage
\end{document}

解决方案

如果只有一行,它也能起作用,就像你最初的问题一样。也许把它放在\AtEndDocument{\clearpage}你的序言中是个好主意。

答案2

我在 IEEE 上遇到了同样的问题,但就我而言,我使用了

\clearpage

代替

\newpage

就是这样。

答案3

我找不到双列模式下 RevTeX 的好的解决方案,我以前这样做过但它可能并不总是有效(这取决于你在哪一列)。

\maketitle
~
\newpage
~
\newpage
...

相关内容