How do I prevent LaTeX from padding spaces between paragraphs so that next section begins at top of next page?
The parameter that controls inter-paragraph spacing is called \parskip
(See Paragraph Spacing ). You set it (with "rubber" values) using something like:
\setlength{\parskip}{1cm plus4mm minus3mm}
The defualt value of \parskip
is class dependent. The "plus" and "minus" parts tell TeX how much it can adjust the value to improve the layout (that is they make the spacing elastic, thus the "rubber" designation). Reducing (or eliminating) the "plus" part of the rubber might help.
Watch out though, you can cause other layout artifacts if you constrain TeX too much.
Other things to think about:
- The widow and club penalties probably apply section headings, and may be affecting TeX's layout choices (see https://stackoverflow.com/questions/512967/how-can-one-keep-a-section-from-being-at-the-end-of-a-page-in-latex for a discussion).
- You may also want to consider messing with
\baselineskip
which controls the allowed spacing between lines of text and can also have rubber values. - This is a common problem, and there are probably some fairly sophisticated treatments already prepared on CTAN.
\vfill
before the new section worked perfectly for me.