How do I force a column-break in a multi-column page?

  • Put \vfill\null after the last line to break.
  • And then put \columnbreak after \vfill\null.

alt text

\documentclass{article}
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage{lipsum,multicol}
\usepackage[colorlinks]{hyperref}
\title{Introduction to \LaTeX}
\author{xport}
\begin{document}

\begin{multicols}{2}
\maketitle
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Abstract}
\lipsum[1-2]
\vfill\null
\columnbreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\tableofcontents
%\vfill\null
%\columnbreak
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Counter}
\lipsum[1]
\section{Box}
\lipsum[1]
\subsection{Parbox}
\lipsum[1]
\subsection{Rule}
\lipsum[1]
\end{multicols}
\end{document}

If you are not using the multicols package you can insert a column break by adding the following:

\vfill\eject

The command, appropriately enough, is \columnbreak.

If you want to turn off columns being forced to equal height, use the starred version \begin{multicols*}{2}.