[Tex/LaTex] Reduce space between paragraphs in multicol

multicol

I'm using multicols package to write a document in two columns, with the article class. It's a known issue though that the package can create big blank spaces between paragraphs to keep some structure of the document, like the case in the image

enter image description here

In the multicols documentation, it says to play with the \tolerance parameter in order to change it. In my case that space only disapears if I set \tolerance = 0. This, though, also messes with the lines width, like in the image below:

enter image description here

Observe that the space between pargraphs is gone, but the lines from the first column now invade the second column.

How could I achieve what's seen in the second image, but keeping the text justified and adjusted to the column?

Best Answer

This shows the effect of \parskip in a loop, starting from very small values to larger ones. (I won't show 99 pages of output here ;-))

Since \parskip is set in the environment multicols, there is no leaking outside of multicols.

\documentclass{article}

\usepackage{blindtext}
\usepackage{multicol}


\newcommand{\shortchunk}{%
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
lobortis facilisis sem. Nullam nec mi et neque pharetra
sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
felis non sodales commodo, lectus velit ultrices augue, a
dignissim nibh lectus placerat pede.
}

\usepackage{pgffor}
\usepackage{calc}

\begin{document}

\newlength{\foo}
\setlength{\foo}{0.002\baselineskip}%

\begin{multicols}{2}
\foreach \x in {1,...,1000} {%
  \setlength{\parskip}{\x\foo}%
  \shortchunk

}
\end{multicols}

\end{document}
Related Question