Icon for parent category 'Writing'

Multiple Columns

Columns aren’t natively supported by LaTeX. I know, that strange typesetting language keeps throwing curveballs.

But they are easily included with the help of the package multicol.

It allows you to create a new environment.

1\begin{multicols}{colNum}
2    % ... just regular text here ... 
3\end{multicols}

It does exactly what you expect. It groups whatever is inside into colNum amount of columns. These columns are distributed in such a way that all columns are sized equally: the bottom lines are all on the same baseline.

If you don’t want this, use the star variation multicols*.

 1\usepackage{multicol}
 2
 3\begin{document}
 4\begin{multicols}{3}
 5    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi non arcu pulvinar, mattis diam sed, tempus velit. Proin et faucibus sapien, eu vehicula lorem. Fusce consequat diam ac urna ullamcorper, sodales pharetra eros accumsan. Maecenas accumsan tellus eu erat molestie, eget sollicitudin sem volutpat. Morbi vel nisi vel magna consectetur pellentesque. Pellentesque in orci id urna luctus ornare. Praesent nisi nulla, congue et molestie vel, molestie in est.
 6\end{multicols}
 7\hrulefill
 8\begin{multicols*}{3}
 9    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi non arcu pulvinar, mattis diam sed, tempus velit. Proin et faucibus sapien, eu vehicula lorem. Fusce consequat diam ac urna ullamcorper, sodales pharetra eros accumsan. Maecenas accumsan tellus eu erat molestie, eget sollicitudin sem volutpat. Morbi vel nisi vel magna consectetur pellentesque. Pellentesque in orci id urna luctus ornare. Praesent nisi nulla, congue et molestie vel, molestie in est.
10\end{multicols*}
11\vfill
12\end{document}
Code above > output below
Code above > output below

Breathing Space

To increase the space between columns, modify the \columnsep length.

To insert vertical rules between the columns, modify the \columnseprule length. It determines the width of these rules. Default is 0pt, which means no visible rule.

The \columnbreak command forces LaTeX to start a new column right after it. This means that all paragraphs in the current column are distributed evenly to fill all space.

1\setlength{\columnsep}{30pt}
2\setlength{\columnseprule}{1pt}
3\begin{multicols}{3}
4    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi non arcu pulvinar, mattis diam sed, tempus velit. \columnbreak Proin et faucibus sapien, eu vehicula lorem. Fusce consequat diam ac urna ullamcorper, sodales pharetra eros accumsan. Maecenas accumsan tellus eu erat molestie, eget sollicitudin sem volutpat. Morbi vel nisi vel magna consectetur pellentesque. Pellentesque in orci id urna luctus ornare. Praesent nisi nulla, congue et molestie vel, molestie in est.
5\end{multicols}
Code left > output right
Code left > output right
Continue with this course
Support me and this website!

Want to support me?

Buy one of my projects. You get something nice, I get something nice.

Donate through a popular platform using the link below.

Simply giving feedback or spreading the word is also worth a lot.