1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
<head>
<title>UK TeX FAQ -- question label wholerow</title>
</head><body>
<h3>How to change a whole row of a table</h3>
<p>Each cell of a table is set in a box, so that a change of font style
(or whatever) only lasts to the end of the cell. If one has a
many-celled table, or a long one which needs lots of rows emphasising,
putting a font style change command in every cell will be impossibly
tedious.
<p>With the <i>array</i> package, you can define column modifiers
which will change the font style for a whole <em>column</em>. However,
with a bit of subtlety, one can make such modifiers affect rows rather
than columns. So, we set things up by:
<blockquote>
<pre>
\usepackage{array}
\newcolumntype{$}{>{\global\let\currentrowstyle\relax}}
\newcolumntype{^}{>{\currentrowstyle}}
\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}%
#1\ignorespaces
}
</pre>
</blockquote>
Now, we put '<code>$</code>' before the first column specifier; and we put '<code>^</code>'
before the modifiers of subsequent ones. We then use <code>\</code><code>rowstyle</code> at
the start of each row we want to modify:
<blockquote>
<pre>
\begin{tabular}{|$l|^l|^l|} \hline
\rowstyle{\bfseries}
Heading & Big and & Bold \\ \hline
Meek & mild & entry \\
Meek & mild & entry \\
\rowstyle{\itshape}
Strange & and & italic \\
Meek & mild & entry \\ \hline
\end{tabular}
</pre>
</blockquote>
The <i>array</i> package works with several other
<code>tabular</code>-like environments from other packages (for
example <code>longtable</code>), but unfortunately this trick won't
always work.
<dl>
<dt><tt><i>array.sty</i></tt><dd>Distributed as part of <a href="ftp://cam.ctan.org/tex-archive/macros/latex/required/tools.tar.gz">macros/latex/required/tools</a> (<a href="ftp://cam.ctan.org/tex-archive/macros/latex/required/tools.zip">zip</a>, <a href="http://www.tex.ac.uk/tex-archive/macros/latex/required/tools/">browse</a>)
</dl>
<p><p>This question on the Web: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=wholerow">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=wholerow</a>
</body>
|