# Removing blank line in tabulary

I use tabulary package for automatic width adjustment, but I have a blank line in the first row.

\documentclass{article}
\usepackage{tabulary}
\begin{document}

\begin{table}[htbp]
\begin{tabulary}{1.0\textwidth}{L|L|L|L|L}
\hline
& \hbox{Name} & \hbox{Function} & \hbox{Properties} & \hbox{Relationships} \\\hline\hline
7 & \hbox{System Maintenance Database} & Stores all kinds of errors occurred during operation from all components in a specified way
& Only error related information is stored & \\
9 & Main Database & & \\
\hline
\end{tabulary}
\caption{Data elements}
\label{data}
\end{table}
\end{document}


What's wrong? How do I remove it?

• \hbox is not documented in the LaTeX manual and for a reason: its behavior can be surprising. But why do you think you need it? – egreg Oct 26 '13 at 19:39

You are trying to change the format of certain cells by using \hbox. The correct way to do this is to use \multicolumn:

\documentclass{article}

\usepackage{tabulary}

\begin{document}

\begin{table}[htbp]
\begin{tabulary}{0.9\textwidth}{L|L|L|L|L}
\hline
&\multicolumn{1}{l|}{Name}&\multicolumn{1}{l|}{Function}
&\multicolumn{1}{l|}{Properties}&\multicolumn{1}{l}{Relationships}\\
\hline\hline
7 &System Maintenance Database &Stores all kinds of
errors occurred during operation from all components in a
specified way
& Only error related information is stored & \\
9 & Main Database & & \\
\hline
\end{tabulary}
\caption{Data elements}
\label{data}
\end{table}
\end{document}


I have unboxed your "System Maintenance Database" so the table fits on the page; if you want that unbroken, you should again use a \multicolumn

If you don't mind changing the style of your table a little bit, I'd advise using booktabs, it makes the table look much cleaner and nice. If you still want your own table fixed, let me know in a comment.

The command L{3cm}in the table header means that a certain column will have left-alignment and will have a width of 3cm. You're free to change that. Since the first column was a little number, I just wrote l which just gives the alignment, no width.

\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{tabulary}

\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}

\begin{document}

\begin{table}
\begin{tabular}{l*{4}{L{3cm}}}
\toprule
& Name & Function & Properties & Relationships \\ \midrule
7 & System Maintenance Database & Stores all kinds of errors occurred during operation from all components in a specified way
& Only error related information is stored & \\
9 & Main Database & & \\
\bottomrule
\end{tabular}
\caption{Data elements}
\label{data}
\end{table}

\end{document}

• With booktabs look better, no doubt, but the real improvement in style was remove the vertical lines and double lines. :) – Fran Oct 26 '13 at 18:39
• @Fran Indeed, but I think that in the documentation of the package itself it is advised to avoid vertical lines altogether. If I remember well. The advantage of booktabs is also that it provides some auto-spacing for the midrules. :D – Alenanno Oct 26 '13 at 19:12
• Of course. It is a shame that does not work well with colored rows because this, but in other case tables are indeed more elegant with booktabs. – Fran Oct 26 '13 at 20:12