NAME¶
LaTeX::Table::Types::TypeI - Interface for LaTeX table types.
DESCRIPTION¶
This is the type interface (or Moose role), that all type objects must use.
LaTeX::Table delegates the LaTeX code generation to type objects. It stores
all information we have in easy to use "TEMPLATE VARIABLES".
LaTeX::Table ships with very flexible templates, but it is possible to use the
template variables defined here to build custom templates.
INTERFACE¶
- "generate_latex_code"
TEMPLATE VARIABLES¶
Most options are accessible here:
- "CENTER, LEFT, RIGHT"
- Example:
[% IF CENTER %]\centering
[% END %]
- "ENVIRONMENT, STAR, POSITION, SIDEWAYS"
- These options for floating environments are typically used
like:
[% IF ENVIRONMENT %]\begin{[% ENVIRONMENT %][% IF STAR %]*[% END %]}[% IF POSITION %][[% POSITION %]][% END %]
...
[% END %]
# the tabular environment here
...
[% IF ENVIRONMENT %] ...
\end{[% ENVIRONMENT %][% IF STAR %]*[% END %]}[% END %]
- "CAPTION_TOP, CAPTION_CMD, SHORTCAPTION, CAPTION,
CONTINUED, CONTINUEDMSG"
- The variables to build the caption command. Note that there
is NO template for the "maincaption" option. "CAPTION"
already includes this maincaption if specified.
- "LABEL"
- The label:
[% IF LABEL %]\label{[% LABEL %]}[% END %]
- "TABULAR_ENVIRONMENT, WIDTH, COLDEF"
- These three options define the tabular environment:
\begin{[% TABULAR_ENVIRONMENT %]}[% IF WIDTH %]{[% WIDTH %]}[% END %]{[% COLDEF %]}
- "FONTFAMILY, FONTSIZE"
- Example:
[% IF FONTSIZE %]\[% FONTSIZE %]
[% END %][% IF FONTFAMILY %]\[% FONTFAMILY %]family
[% END %]
- "TABLEHEADMSG, TABLETAIL, TABLELASTTAIL,
XENTRYSTRETCH"
- For the multi-page tables.
- "MAXWIDTH, FOOTTABLE"
- Currently only used by LaTeX::Table::Types::Ctable.
In addition, some variables already contain formatted LaTeX code:
- "HEADER_CODE"
- The formatted header:
\toprule
\multicolumn{2}{c}{Item} & \\
\cmidrule(r){1-2}
Animal & Description & Price \\
\midrule
- "DATA_CODE"
- The formatted data:
Gnat & per gram & 13.65 \\
& each & 0.01 \\
Gnu & stuffed & 92.59 \\
Emu & stuffed & 33.33 \\
Armadillo & frozen & 8.99 \\
\bottomrule
- "RESIZEBOX_BEGIN_CODE, RESIZEBOX_END_CODE"
- Everything between these two template variables is resized
according the "resizebox" option.
- "EXTRA_ROW_HEIGHT_CODE, DEFINE_COLORS_CODE,
RULES_COLOR_GLOBAL_CODE, RULES_WIDTH_GLOBAL_CODE"
- Specified by the theme. "EXTRA_ROW_HEIGHT_CODE"
will contain the corresponding LaTeX extrarowheight command, e.g for
'1pt':
\setlength{\extrarowheight}{1pt}
Otherwise it will contain the empty string. The other template variables
will contain the command specified by the corresponding theme option.
Finally, some variables allow access to internal "LaTeX::Table"
variables:
- "LT_NUM_COLUMNS"
- Contains the number of columns of the table.
- "LT_BOTTOM_RULE_CODE"
- Code that draws the rules at the bottom of the table
according the theme options.
SEE ALSO¶
LaTeX::Table
The predefined templates: LaTeX::Table::Types::Std, LaTeX::Table::Types::Ctable,
LaTeX::Table::Types::Longtable, LaTeX::Table::Types::Xtab
LICENSE AND COPYRIGHT¶
Copyright (c) 2006-2010 "<limaone@cpan.org>"
This module is free software; you can redistribute it and/or modify it under the
same terms as Perl itself. See perlartistic.