有时 latex 并不关心两列是否高度完全相同。这里有一个例子,第一页上左列比右列长约一毫米:
\documentclass[twocolumn,a4paper,12pt]{article}
\usepackage[margin=3.0cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{librebaskerville}
\usepackage[T1]{fontenc}
\setlength{\parindent}{2em}
\setlength{\parskip}{0.5em}
\renewcommand{\baselinestretch}{1.1}
\usepackage{lipsum}
\begin{document}
\lipsum[1-6]
\end{document}
问题是否由固定的段落间距长度引起?如果是,如何缩小/放大它们,但仍使垂直拉伸正常工作?
答案1
LaTeX\flushbottom
默认使用双列,这样任何可拉伸的垂直空间都会被拉伸,以便每列最后一行的基线对齐。
虽然在您的示例中,您已经删除了所有可拉伸空间,并将其设置parskip
为固定的 6pt,并且页面上没有章节标题或显示数学,但这意味着没有可以拉伸的空间。由于\parskip
不是列的倍数,因此它们的\baselineskip
长度不一定不同,因为它们的段落分隔符数量不同。
你可以使用
\setlength{\parskip}{\baselineskip}
如果你想让所有行都对齐:
但仍然没有可伸缩的空间来容纳任何不同高度的物品。
或者使用灵活的方式,\parskip
例如
\setlength{\parskip}{6pt plus 2pt}