4

I have a problem of extra-space after multicol environment. I am trying to create a small form; here is an example of my code:

\documentclass[a4paper,14pt]{extreport}
\usepackage{fontspec} %
\usepackage{polyglossia}
\setmainlanguage{english} 
\usepackage{cfr-lm}
\usepackage{lipsum}
\usepackage{multicol}
\usepackage{framed, color}
\definecolor{shadecolor}{rgb}{0.64, 0.64, 0.82}

\begin{document}
\begin{multicols}{2}
    \noindent 
    \textbf{Procurement \textnumero:}  \dotfill \\
    {} \\
    \textbf{Procurement date:}  \dotfill \\
    {} \\
    \textbf{Shipment type:}  \dotfill \\ 
    \vfill\null
    \columnbreak
    \noindent \textbf{Received by:}  \dotfill \\
    {} \\
    \textbf{Received on date:} \dotfill \\
    {} \\
    \textbf{COuntry of origin:} \dotfill \\
\end{multicols} %\par
\begin{center}
    \begin{shaded}
        \Large \textbf{\textsc{Exemplary Specimen:}}
    \end{shaded}
\end{center} \par 
\lipsum[1]
\end{document}

There is way too much space after 2-columns environment! It eats valuable space, as I want my form to fit within 1 page! I think I tried to use \setlength\multicolsep{0pt}, but with no effect! Any hints are welcomed! Thank you!

1

The following provides some clearer code that reproduces the output, but with options to play around with the spacing:

enter image description here

\documentclass[a4paper,14pt]{extreport}

\usepackage{cfr-lm,lipsum,tabularx}
\usepackage[table]{xcolor}

\definecolor{shadecolor}{rgb}{0.64, 0.64, 0.82}

\begin{document}

\noindent
\begingroup\bfseries
\begin{tabularx}{\linewidth}{ @{} X X @{} }
  Procurement \textnumero: \dotfill &
    Received by: \dotfill \\ \\
  Procurement date: \dotfill &
    Received on date: \dotfill \\ \\
  Shipment type: \dotfill &
    Country of origin: \dotfill
\end{tabularx}

\vspace{2\baselineskip}% Adjust to suit your needs

\noindent
\renewcommand{\arraystretch}{2}%
\begin{tabularx}{\linewidth}{ X }
  \cellcolor{shadecolor}\centering\Large Exemplary Specimen:
\end{tabularx}
\endgroup

\bigskip% Adjust to suit your needs

\lipsum[1]

\end{document}

You can also just use the article class, shrink the base font size and then use geometry to allow more real estate on your page. Something like, say

\documentclass{article}

\usepackage[margin=2in]{geometry}
  • Thank you very much, Werner! In essence, you decided NOT to use multicols, but instead use tabular environment, am I right? I was thinking about this approach as well, but decided to check if there is an easy fix for multicol. P.S. I used 14pt font for sake of my eyes, in original document it will be 12pt, of course. Anyway, thanks for the remark! – user136555 Nov 7 '17 at 5:02
  • @user136555: Yes. You don't need a natural flow of content from one column to the next; your document content works well with a tabular-like structure. – Werner Nov 7 '17 at 5:10
  • Note that \vspace also accepts negative values, so you can use that in order to reduce vertical spacing), e.g. \vspace{-1\baselineskip}. – Bashful Beluga Feb 21 '18 at 3:07
1

You should never use \\ for “leaving a blank line”. In this case, you can set locally an increased baseline skip.

\documentclass[a4paper,14pt]{extreport}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{english}
\usepackage{lipsum}
\usepackage{multicol}
\usepackage{framed, color}
\definecolor{shadecolor}{rgb}{0.64, 0.64, 0.82}

\begin{document}
\begin{multicols}{2}
\linespread{1.5}\selectfont
\setlength{\parindent}{0pt}

\textbf{Procurement \textnumero:} \dotfill

\textbf{Procurement date:} \dotfill

\textbf{Shipment type:} \dotfill

\textbf{Received by:} \dotfill

\textbf{Received on date:} \dotfill

\textbf{Country of origin:} \dotfill
\end{multicols}

\begin{shaded}
\centering\Large\bfseries Exemplary Specimen:
\end{shaded}

\lipsum[1]

\end{document}

Note that cfr-lm does nothing when fontspec is loaded.

enter image description here

0

I simply put a command like

\vspace{-0.5cm}

after "\end{multicols}" to "remove" the extra space and I am happy with the result.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.