[Tex/LaTex] Do the different rules generated by booktabs have the same thickness

booktabsrulesviewers

I use the booktabs package and excel2latex to generate my tables. I work in TeXmaker. As I zoom in or zoom out on my table, I find that, sometimes the \toprule, sometimes \midrule and sometimes the \bottomrule appear to be wider than other lines. On the other hand, when I print such a table, the top and bottom rule are wider while the mid rule is thinner.

Is it normal? I like the printed looks of my table but I don't want it to randomly change if I decide to print the whole thesis.

Here is my code and examples:

% Table generated by Excel2LaTeX from sheet 'Tabelle3'
\begin{table}[htbp]
  \centering
  \caption{Add caption}
    \begin{tabular}{rrr}
    \toprule
    \multicolumn{1}{c}{Anzahl der Kanäle} & \multicolumn{1}{c}{Streifenbreite in [mm]} & \multicolumn{1}{c}{Kanalbreite in [mm]} \\
    \midrule
    \multicolumn{1}{c}{n} & \multicolumn{1}{c}{c} & \multicolumn{1}{c}{b} \\
    5     & 13    & 2,80  \\
    6     & 11    & 2,50  \\
    7     & 9     & 2,86  \\
    8     & 8     & 2,50  \\
    \bottomrule
    \end{tabular}%
  \label{tab:addlabel}%
\end{table}%

All lines equal
Bottom line wider
Top line wider

Best Answer

Your PDF viewer is playing tricks on you. See David's comment. In fact, by default, \toprule and \bottomrule produce a rule slightly thicker than that produced by \midrule.

If you don't trust me (or your eyes), you can always check this for yourself by printing the values of the relevant thickness macros in your document. According to section 3 of the booktabs documentation,

The rule commands here all take a default which may be reset within the document (preferably, but not necessarily, in the preamble). For the top and bottom rules this default is \heavyrulewidth and for midrules it is \lightrulewidth [...]

enter image description here

\documentclass{article}

\usepackage{booktabs}

\begin{document}

\bgroup
\ttfamily
\begin{tabular}{ll}
\string\toprule\ \& \string\bottomrule\ thickness & \the\heavyrulewidth\\
\string\midrule\ thickness                        & \the\lightrulewidth
\end{tabular}
\egroup

\begin{table}[htbp]
  \centering
  \caption{Add caption}
    \begin{tabular}{rrr}
    \toprule
    \multicolumn{1}{c}{Anzahl der Kanäle} & \multicolumn{1}{c}{Streifenbreite in [mm]} & \multicolumn{1}{c}{Kanalbreite in [mm]} \\
    \midrule
    \multicolumn{1}{c}{n} & \multicolumn{1}{c}{c} & \multicolumn{1}{c}{b} \\
    5     & 13    & 2,80  \\
    6     & 11    & 2,50  \\
    7     & 9     & 2,86  \\
    8     & 8     & 2,50  \\
    \bottomrule
    \end{tabular}%
  \label{tab:addlabel}%
\end{table}%
\end{document}