Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Please see the MWE below and its result. I didn't use the arydshln package in the example, but I have to use it somewhere else in the same document. As you see, there is something wrong with the vertical border lines in the table. If I don't use one of the arydshln and booktabs packages, it displays correctly.

Is there any workaround here? I'm looking for one of the following:

  1. A method to prevent the wrong display with both packages used.
  2. An alternative to the nice formatting and \toprule, \midrule, and \bottomrule from the booktabs package.
  3. An alternative to the arydshln package to draw dashed lines in math arrays (vectors, matrices).

Thank you for the help.

\documentclass{article}

\usepackage{booktabs}
\usepackage{arydshln}

\begin{document}

\begin{tabular}{ c | r r }
\toprule
    & 123 & 456 \\
\midrule
    \multicolumn{3}{l}{blah blah blah }\\
\midrule
    abc & def & hij \\
\bottomrule
\end{tabular}

\end{document}

screenshot

ADDED--

After some experiments, I found multicolumn is not a key. When I replaced it by a regular row, it still displays wrong.

share|improve this question
    
If you want to have vertical rules in a tabular, don't use booktabs commands: the package is built under the assumption that vertical rules are A Bad Thing. On the other hand, if you stick to \hline or \cline in tables where vertical rules are needed, then you can still load booktabs and employ its commands for other tables. –  egreg Jul 27 '12 at 20:31
add comment

2 Answers 2

up vote 1 down vote accepted

You could try the easybmat package, which makes it easy to put dashed lines inside matrices.

share|improve this answer
add comment

ARRAY
If you read the documentation of booktabs, you will see that booktabs does not support vertical lines. You may try the package array and the command extrarowheight. A MWE:

\documentclass{article}

\usepackage{array}
\usepackage{arydshln}
\setlength{\extrarowheight}{3pt}
\begin{document}

\begin{tabular}{ c | r r }
\hline
    & 123 & 456 \\
\hline
    \multicolumn{3}{l}{blah blah blah }\\
\hline
    abc & def & hij \\
\hline
\end{tabular}

\end{document}

TABU
Or you can try the package tabu, which support all types of lines directly.

\documentclass{article}

\usepackage{booktabs,tabu}

\begin{document}

\tabulinesep=1.2mm
\begin{tabu} to .3\columnwidth [c]{X[c] | X[r] X[r]}
\firsthline[3pt]
    & 123 & 456 \\
\tabucline [1pt on 1.5pt off 2pt]{1-3}
    \multicolumn{3}{l}{blah blah blah }\\
\tabucline [1pt on 1.5pt off 2pt]{1-3}
    abc & def & hij \\
\lasthline[3pt]
\end{tabu}

\end{document}

tabu

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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