Como criar tabelas de largura fixa no LaTeX
O ambiente tabularx
A primeira opção é criar uma tabela utilizando o ambiente tabularx
(insira o pacote tabularx no preâmbulo do seu documento). Este ambiente permite estabelecer uma largura total para a tabela e utiliza a coluna no formato do tipo X.
Todas as colunas que forem especificadas como do tipo X terão suas larguras iguais.
No código abaixo a tabela possui um comprimento total de 10cm e a primeira e segunda coluna possuem o mesmo comprimento.
\documentclass[12pt]{article}
\usepackage{tabularx}\begin{document}
\centering
\begin{table}[!htbp]
\begin{tabularx}{10cm}{|X|X|l|}
\hline
texto & texto & texto\\
\hline
texto & texto & texto\\
\hline
texto & texto & texto\\
\hline
\end{tabularx}
\end{table}
\end{document}
Especificar o comprimento de cada coluna
Caso a sua intenção não seja criar uma tabela de comprimento fixo, mas sim de uma coluna você pode recorrer ao uso do pacote array
.
Assim você pode informar o alinhamento que deseja para o conteúdo dentro da coluna. Alguns argumentos de coluna podem ser p{largura}
(justifica o conteúdo), m{largura}
(coloca o conteúdo no centro), b{largura}
(alinha o conteúdo na base da célula).
Como você viu não existe a opção par alinhar à esquerda ou direita. Então utilizaremos a função n\newcolumntype
para criar as nossas.
\documentclass[12pt]{article}
\usepackage{array}
\usepackage{tabularx}
\newcolumntype{E}[1]{>{\raggedright\let
\newline\\\arraybackslash\hspace{0pt}}m{#1}} %Alinha na esquerda
\newcolumntype{C}[1]{>{\centering\let
\newline\\\arraybackslash\hspace{0pt}}m{#1}}%Alinha no centro
\newcolumntype{D}[1]{>{\raggedleft\let
\newline\\\arraybackslash\hspace{0pt}}m{#1}}%Alinha na direita\begin{document}
\centering
\begin{table}[!htbp]
\begin{tabular}{|E{3cm}|C{2cm}|D{4cm}|}
\hline
texto & texto & texto\\
\hline
texto & texto & texto\\
\hline
texto & texto & texto\\
\hline
\end{tabular}
\end{table}
\end{document}
Confira nossos vídeos no YouTube, visite nosso canal.
Playlist sobre LaTeX no YouTube: Playlist sobre LaTeX