Graphics, Figures & TablesVertical spacing problem in a big table

Information and discussion about graphics, figures & tables in LaTeX documents.
Post Reply
User avatar
Cham
Posts: 937
Joined: Sat Apr 02, 2011 4:06 pm

Vertical spacing problem in a big table

Post by Cham »

I'm having a problem with vertical spacings in a big tablularx which doesn't fit well on a single page. The code below reproduces exactly the problem. What would be the simplest solution?

Code: Select all

\documentclass[11pt,letterpaper,twoside]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{microtype}
\usepackage{enumitem}
\setlist[enumerate]{label*=\arabic*.}
\usepackage[total={6in,10in},left=1.5in,top=0.5in,includehead,includefoot]{geometry}
\usepackage{hhline}
\usepackage{tabularx}

\begin{document}

\section{Some title}

\medskip

\begin{center}
	\small
	\renewcommand{\arraystretch}{1.5}
	\begin{tabularx}{\textwidth}{|XX|}
		\hline
		\multicolumn{1}{|>{\centering}X|}{\textsf{WORD1}}
		& \multicolumn{1}{>{\centering}X|}{\textsf{WORD2}}
		\\ \hhline{==}
		\textbf{\textsf{Subtitle1}}
		
		\medskip
		
		\raggedright
		Blabla bla bla bla blablabla bla bla blabla bla blabla bla bla bla blablabla blabla blabla blabla.
		&
		\\ \hhline{==}
		\textbf{\textsf{Subtitle2}}
		
		\medskip
		
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{0}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
		\end{enumerate}
		&
		\textbf{\textsf{Subtitle3}}
		
		\medskip
		
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=1.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.
			\item Boring comment 2.  Blablabla blabla blabla bla bla bla blabla blablabla blabla bla bla bla blabla blablabla bla.
			\item Boring comment 3.  Blablabla blabla blabla bla bla blabla bla bla blablabla blabla.
			\item Boring comment 4.
		\end{enumerate}
		\\
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{1}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
		\end{enumerate}
		&
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=2.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.  Blabla bla bla bla blabla blabla.
			\item Boring comment 2.  Bla bla blabla blabla bla bla.  Blabla bla
			\item Boring comment 3.  Bla bla bla.  Blabla blabla bla bla blabla, bla bla bla blabla blablabla.
			\item Boring comment 4.  Bla blablabla blabla blabla bla bla bla.
		\end{enumerate}
		\\
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{2}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
		\end{enumerate}
		&
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=3.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.
			\item Boring comment 2.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
			\item Boring comment 3.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
			\item Boring comment 4.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
		\end{enumerate}
		\\
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{3}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
		\end{enumerate}
		&
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=4.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.  Blabla blablabla blabla blabla blabla bla bla, bla bla.
			\item Boring comment 3.  Blabla blablabla blabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.  Bla bla bla blablabla bla bla.
		\end{enumerate}
		\\
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{4}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
		\end{enumerate}
		&
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=5.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.
			\item Boring comment 2.
			\item Boring comment 3.
			\item Boring comment 4.
		\end{enumerate}
		\\ \hline
	\end{tabularx}
\end{center}

\end{document}
The vertical spacing between each numbered paragraph is clearly too large. How to reduce it? I could use the command \\[negative spacing], but I'm not sure this is the best solution.

I could also reduce the text size, but I believe there's a way to fit the whole text in a single page without reducing the font. What would you suggest?

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org

NEW: TikZ book now 40% off at Amazon.com for a short time.

Johannes_B
Site Moderator
Posts: 4182
Joined: Thu Nov 01, 2012 4:08 pm

Vertical spacing problem in a big table

Post by Johannes_B »

Code: Select all

\documentclass[11pt,letterpaper,twoside]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{microtype}
\usepackage{enumitem}
\setlist[enumerate]{label*=\arabic*.}
\usepackage[total={6in,10in},left=1.5in,top=0.5in,includehead,includefoot]{geometry}
\usepackage{hhline}
\usepackage{tabularx}
\usepackage{showframe}

\begin{document}

\section{Some title}

\smallskip

\bgroup\noindent%
\setlist[enumerate]{nosep,topsep=0pt,partopsep=0pt}%
\small%
%\renewcommand{\arraystretch}{1.5}%<===== ?
\enlargethispage{\baselineskip}%
\begin{tabularx}{\textwidth}{|XX|}
\hline
\multicolumn{1}{|>{\centering}X|}{\textsf{WORD1}}
& \multicolumn{1}{>{\centering}X|}{\textsf{WORD2}}
\\ \hhline{==}
\textbf{\textsf{Subtitle1}}

\smallskip

\raggedright
Blabla bla bla bla blablabla bla bla blabla bla blabla bla bla bla blablabla blabla blabla blabla.
&
\\ \hhline{==}
\textbf{\textsf{Subtitle2}}

\smallskip

\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
\setcounter{enumi}{0}
\raggedright
\item Blabla bla bla bla blablabla bla.
\end{enumerate}
&
\textbf{\textsf{Subtitle3}}

\smallskip

\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=1.\arabic*]
\setcounter{enumi}{0}
\raggedright
\item Boring comment 1.
\item Boring comment 2.  Blablabla blabla blabla bla bla bla blabla blablabla blabla bla bla bla blabla blablabla bla.
\item Boring comment 3.  Blablabla blabla blabla bla bla blabla bla bla blablabla blabla.
\item Boring comment 4.
\end{enumerate}
\\
		\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,nosep]
		\setcounter{enumi}{1}
		\raggedright
		\item Blabla bla bla bla blablabla bla. WOMBAT
		\end{enumerate}
		&
		\begin{enumerate}
		\setcounter{enumi}{0}
		\raggedright
		\item Boring comment 1.  Blabla bla bla bla blabla blabla.
		\item Boring comment 2.  Bla bla blabla blabla bla bla.  Blabla bla
		\item Boring comment 3.  Bla bla bla.  Blabla blabla bla bla blabla, bla bla bla blabla blablabla.
		\item Boring comment 4.  Bla blablabla blabla blabla bla bla bla.
		\end{enumerate}
		\\
			\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
			\setcounter{enumi}{2}
			\raggedright
			\item Blabla bla bla bla blablabla bla.
			\end{enumerate}
			&
			\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=3.\arabic*]
			\setcounter{enumi}{0}
			\raggedright
			\item Boring comment 1.
			\item Boring comment 2.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
			\item Boring comment 3.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
			\item Boring comment 4.  Blabla blablablablabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.
			\end{enumerate}
			\\
				\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
				\setcounter{enumi}{3}
				\raggedright
				\item Blabla bla bla bla blablabla bla.
				\end{enumerate}
				&
				\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=4.\arabic*]
				\setcounter{enumi}{0}
				\raggedright
				\item Boring comment 1.  Blabla blablabla blabla blabla blabla bla bla, bla bla.
				\item Boring comment 3.  Blabla blablabla blabla blabla blabla bla bla, bla bla blabla.  Blabla blabla blablabla bla bla.  Bla bla bla blablabla bla bla.
				\end{enumerate}
				\\
					\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm]
					\setcounter{enumi}{4}
					\raggedright
					\item Blabla bla bla bla blablabla bla.
					\end{enumerate}
					&
					\begin{enumerate}[itemsep=1ex,leftmargin=0.5cm,label*=5.\arabic*]
					\setcounter{enumi}{0}
					\raggedright
					\item Boring comment 1.
					\item Boring comment 2.
					\item Boring comment 3.
					\item Boring comment 4.
					\end{enumerate}
					\\ \hline
					\end{tabularx}
					\egroup

					\end{document}


But maybe getting over to longtable might be a better solution.
The smart way: Calm down and take a deep breath, read posts and provided links attentively, try to understand and ask if necessary.
User avatar
Cham
Posts: 937
Joined: Sat Apr 02, 2011 4:06 pm

Vertical spacing problem in a big table

Post by Cham »

Thanks a lot for the reply.

Why the \bgroup\noindent%, instead of \begin{center}...\end{center} ?

Why the % after \small ?

I'm using the command \renewcommand{\arraystretch}{1.5} because the vertical spacements are better looking around the titles. The frame gets too tight without that command.

I mostly solved my issue by using the font size \footnotesize, and \\[-18pt] to reduce the vertical spacings of the enumerates. Is that a proper solution ?
User avatar
Johannes_B
Site Moderator
Posts: 4182
Joined: Thu Nov 01, 2012 4:08 pm

Vertical spacing problem in a big table

Post by Johannes_B »

A center environment adds vertical space at the beginning and ending. Your table has textwidth, there is nothong to center anyway.

The percent signs comment out the line breaks, which are treated. As spaces. That you should know.

As long as you are fully aware of why you are doing something, it cannot be a wrong solution.
The smart way: Calm down and take a deep breath, read posts and provided links attentively, try to understand and ask if necessary.
Post Reply