Colunas de largura variável em tabelas

Esta é uma visão ligeiramente diferente do problema abordado em “Tabelas de largura fixa” — aqui, temos uma coluna cuja largura não podemos prever quando definimos o design geral do documento.

Enquanto as técnicas básicas (com os pacotes tabularx, tabulary e ltxtable ) para este problema são as mesmas usadas para o problema da tabela de largura fixa, há uma ferramenta extra a qual podemos pedir ajuda, que pode ser preferível em algumas situações.

Suponha que, em uma coluna tenhamos dados que são lidos de uma fonte externa, e que a própria fonte não é totalmente previsível. Os dados na coluna podem ficar muito estreitos em todas as linhas da tabela, ou podem ser suficientemente grandes para que a tabela saia pela borda da página; entretanto, nós não queremos definir um tamanho fixo para a tabela para tornar a coluna o mais larga possível “para garantir”. Gostaríamos que a coluna fosse o menor possível, mas tivesse a possibilidade de se tornar mais larga até um limite máximo e (mesmo se essa largura fosse excedida) se transformasse em uma coluna de estilo p.

O pacote varwidth, discutido em “Dimensionamento automático de minipáginas”, oferece uma solução. Se você carregá-lo junto com o pacote array “exigido” pelo LaTeX , isto é,

\usepackage{array}
\usepackage{varwidth}
o varwidth define um novo tipo de coluna “V”, que pode ser usado da seguinte maneira:
\begin{tabular}{l V{3.5cm} r}
  foo & blah      & bar \\
  foo & blah blah & bar \\
\end{tabular}
quando a segunda coluna terá menos de 3,5 cm de largura; ou você pode usá-lo da seguinte maneira:
\begin{tabular}{l V{3.5cm} r}
  foo & blah      & bar \\
  foo & blah blah & bar \\
  foo & blah blah blah blah blah blah
                  & bar \\
\end{tabular}
onde a segunda coluna será visivelmente mais larga, e vai criar uma segunda linha na terceira sequência.
array.sty
Distributed as part of 2etools
varwidth.sty
varwidth


Do you have any question? Ask on: latex.net.br - we love qood questions!