[Tex/LaTex] Reduce space before and after tabular environment

spacingtables

I have a document with many occurrences of

\begin{tabular} 
... 
\end{tabular}

I have been unable to find a global command that will reduce the vertical space before and after this environment. Any help appreciated. Here is the context:

\documentclass{report}
\usepackage{setspace,relsize,needspace,etoolbox}
\makeatletter
\preto{\@verbatim}{\topsep=-1.5pt \partopsep=-1pt }
\makeatother
\parskip 14pt
\parindent 0ex
\setstretch{1}
\begin{document}
\rule{\linewidth}{1mm}
\vspace*{\stretch{2}}
\vspace{.3in}
. . . 
\begin{spacing}{0.7}
\vbox{\noindent\textbf{re : Race/Ethnicity}
{\smaller
\begin{tabular}{ rrr }
n&missing&unique \\
4269&0&5 \end{tabular}
\begin{verbatim}
Mexican American (744, 17%), Other Hispanic (478, 11%) 
Non-Hispanic White (2103, 49%), Non-Hispanic Black (762, 18%) 
Other Race Including Multi-Racial (182, 4%) 
\end{verbatim}
}}

As Peter Grill stated (even though I didn't write a completely executable example) the act of simplifying is very useful – I think the \parskip is much of my problem. I think a solution to this is:

\usepackage{etoolbox}
\makeatletter
\preto{\@tabular}{\parskip=0pt}
\makeatother

which gets rid of extra space before the tabular but leaves too much afterwards.

The reason I've set parskip and parindent as I have (14pt, 0ex) is that this is for handouts for a course that also look decent when projected on a screen, i.e., this is a cross between printed and projected material.

Best Answer

Have you tried to add this command to your preamble?

\setlength{\textfloatsep}{0.1cm}

You can globally change parskip using

\addtolength{\parskip}{-0.5mm}

Set the values to fit your needs.

Hope this helps.