我正在写一篇文章ACM Sigplan 类并且想要平衡文本最后一页(在单独页面上的参考书目部分之前)的两列。
我通常在最后一页使用balance
包和\balance
命令,但在这种情况下,它有时会弄乱第二列两行之间的垂直空间,正如您在此处看到的:
平衡本身是正确的。不平衡时,此位置的空间是正确的。源代码中此位置没有什么特别之处(只有文本)。
问题是否发生,取决于很多其他因素,例如前几页的内容。它也并不总是在同一两行之间,位置也会根据其他文档内容而变化。
下面是我可以重现该问题的最小示例(是的,它有三页,但如果您删除前两页中的任何一页,问题就会消失):
\documentclass{sig-alternate}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{balance}
\begin{document}
\begin{figure*}[t]
\blindtext \blindtext \blindtext \blindtext
\end{figure*}
foo
\clearpage
\blindtext \blindtext
\balance
\section{Heading}
\blindtext \blindtext
\blindtext
\blindtext
\end{document}
在此示例中,问题发生在最后一页右列第 6 行和第 7 行之间(编译的PDF)。
我使用 pdflatex(版本 3.1415926-1.40.10 TeX Live 2009/Debian),并且几个 PDF 查看器都出现了这个问题(至少是 evince 和 acroread)。
我也尝试了flushend
包,但完全没有效果,并且尝试了\balancecolumns
文档类提供的命令,产生了完全错误的布局。
我已让它在文本的正确位置使用手动分栏符(使用\vfill\pagebreak\noindent
),但我想知道是否有自动解决方案,或者我是否可以使用该balance
包修复该问题。
我无法更改提供的类文件或使用该multicol
包代替\twocolumn
。