diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-13 00:01:05 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-13 00:01:05 +0000 |
commit | 7dc48e4d760aa8e703387e96794effaad3c24a78 (patch) | |
tree | 7d99efb2359a56ffe56c80d6c2192ffcc41e2d92 /Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty | |
parent | fd257bd5c75a905dfa0ca6e3e507d9ed29338e1f (diff) |
oberdiek
git-svn-id: svn://tug.org/texlive/trunk@1150 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty b/Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty new file mode 100644 index 00000000000..6d84a1f82e1 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty @@ -0,0 +1,107 @@ +% File: tabularkv.sty +% Version: 2005/07/22 v1.0 +% Author: Heiko Oberdiek +% Email: <oberdiek@uni-freiburg.de> +% +% Copyright: Copyright (C) 2005 Heiko Oberdiek. +% +% This work may be distributed and/or modified under +% the conditions of the LaTeX Project Public License, +% either version 1.3 of this license or (at your option) +% any later version. The latest version of this license +% is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions +% of LaTeX version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Heiko Oberdiek. +% +% Function: This package adds a key value interface for tabular +% by the new environment "tabularkv". Thus the TeX +% source code looks better by named parameters, +% especially if package "tabularht" is used. +% +% Use: \usepackage{tabularkv} +% +% The package provides the environment "tabularkv" +% that takes an optional argument with tabular +% parameters: +% * width (width specification, "tabular*" is used) +% * x (width specification, "tabularx" is used, +% package "tabularx" must be loaded) +% * height (height specification, see package tabularht) +% * valign (vertical positioning, this option is optional) +% values: top, bottom, center +% +% Parameter "valign" optional, the following are +% equivalent: +% \begin{tabularkv}[..., valign=top]{l}...\end{tabularkv} +% \begin{tabularkv}[...][t]{l}...\end{tabularkv} +% +% Example: +% \documentclass{article} +% \usepackage{tabularkv} +% +% \begin{document} +% \fbox{% +% \begin{tabularkv}[ +% width=4in, +% height=1in, +% valign=center +% ]{@{}l@{\extracolsep{\fill}}r@{}} +% upper left corner & upper right corner\\% +% \noalign{\vfill}% +% \multicolumn{2}{@{}c@{}}{bounding box}\\ +% \noalign{\vfill}% +% lower left corner & lower right corner\\ +% \end{tabularkv}% +% } +% \end{document} +% +% Installation: +% CTAN location: CTAN:macros/latex/contrib/oberdiek/tabularkv.sty +% TDS location: TDS:tex/latex/oberdiek/tabularkv.sty +% +% History: 2005/09/22 v1.0: +% * first public version, +% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{tabularkv} + [2005/09/22 v1.0 Key value interface for tabular parameters] + +\RequirePackage{keyval} +\RequirePackage{tabularht} + +\let\tabKV@star@x\@empty +\let\tabKV@width\@empty +\let\tabKV@valign\@empty + +\define@key{tabKV}{height}{% + \setlength{\dimen@}{#1}% + \edef\@toarrayheight{to\the\dimen@}% +} +\define@key{tabKV}{width}{% + \def\tabKV@width{{#1}}% + \def\tabKV@star@x{*}% +} +\define@key{tabKV}{x}{% + \def\tabKV@width{{#1}}% + \def\tabKV@star@x{x}% +} +\define@key{tabKV}{valign}{% + \edef\tabKV@valign{[\@car #1c\@nil]}% +} + +\newenvironment{tabularkv}[1][]{% + \setkeys{tabKV}{#1}% + \@nameuse{% + tabular\tabKV@star@x\expandafter\expandafter\expandafter + }% + \expandafter\tabKV@width\tabKV@valign +}{% + \@nameuse{endtabular\tabKV@star@x}% +} + +\endinput |