[Tex/LaTex] No column break in new sections

columnbreakcolumnstwo-column

I'm working in a two column article. At the end of the first column I have a new section, LaTeX is breaking the column and start the new section in the second column. How can I force LaTeX to fill all the first column before start the new section in the second column? i.e. Put the section heading in the first column

\documentclass[10pt,a4paper, twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
\usepackage[bottom=2cm]{geometry}
\begin{document}
\blindtext
\blindtext
\blindtext
\section{Section}
\blindtext
\end{document}

enter image description here

Best Answer

1. Enlarging the page

A possible solution is to use the command \enlargethispage{\baselineskip} to locally enlarge the page with one line. Of cause you may experiment with other values. On my system 0.25\baselineskip, was enough to move the section and two line to the previous column.

\documentclass[10pt,a4paper, twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
\usepackage[bottom=2cm]{geometry}
\begin{document}
\enlargethispage{\baselineskip}
\blindtext
\blindtext
\blindtext
\section{Section}
\blindtext
\end{document}

enter image description here

2. Reducing the space above \section

If enlarging the page is not an option, you can reduce the space above and below the section by putting a \vspace-command with negative value before and after the \section-command. However, this approach destroy some of the ideas behind LaTex.

\documentclass[10pt,a4paper, twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
\usepackage[bottom=2cm]{geometry}
\begin{document}
%\enlargethispage{\baselineskip}
\blindtext
\blindtext
\blindtext
\vspace{-0.25\baselineskip}  %% ---> **Here it is**
\section{Section}
\blindtext
\end{document}

enter image description here

As you will see, reducing with 0.25\baselineskip is enough on my system, but it may be that you have to increase the value on your system, depending on your setup.

NB! You may of cause still use the package multicol for grid setting and column balancing.

NB! A final warning: This type of tinkering should be the absolutely last thing you do after you have finalised all editing and proofreading.

Related Question