Alinhar o texto na parte inferior da célula da tabela

Alinhar o texto na parte inferior da célula da tabela

Preciso criar um índice analítico em formato de tabela com quebra automática de texto nos títulos dos assuntos. O número da página está atualmente no topo de cada célula. Nas linhas onde o título está quebrado, preciso do número da página alinhado na parte inferior. Este é o meu código:

\begin{tabularx}{\linewidth}{ l X l }

  Figure & & Page \\

  1.1.1  &  test text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \dotfill &  10 \\
  1.1.2 & line \dotfill & 12 \\

\end{tabularx}

Responder1

Esta pode ser a solução que você procura, embora seja um pouco desajeitada. Você deve incluir arrayo pacote para obter a opção b{}de alinhamento de tabelas.

\documentclass{article}
\usepackage{array}

\begin{document}

\begin{tabular}{b{0.1\linewidth}b{0.8\linewidth}p{0.1\linewidth}}

  Figure & & Page \\

  1.1.1 & test text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \dotfill & 10 \\
  1.1.2 & line \dotfill & 12 \\
  1.1.3  &  a lot of text text text text text text text text text text text text text text text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \dotfill &  15 \\

\end{tabular}

\end{document}

O que você precisa fazer é compilar o código acima e procurar as linhas, onde a coluna do meio está em várias linhas:

Primeira compilação

Em seguida, insira \newlineapós o número da Figura, para que ela suba uma linha. Então neste caso a tabela ficará assim:

\begin{tabular}{b{0.1\linewidth}b{0.8\linewidth}p{0.1\linewidth}}

  Figure & & Page \\

  1.1.1\newline & test text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \dotfill & 10 \\
  1.1.2 & line \dotfill & 12 \\
  1.1.3\newline\newline  &  a lot of text text text text text text text text text text text text text text text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \dotfill &  15 \\

\end{tabular}

E o resultado final:

Final

Responder2

tabela com números de página

\documentclass{article}
\usepackage{tabularx}

\newcommand\DotsPage [1]{\dotfill\rlap{\kern2\tabcolsep #1}&}

\begin{document}
\begin{tabularx}{\linewidth}{ l X l }

  Figure & & Page \\

  1.1.1  &  test text text  text  text  text  text  text  text  text  text
  text  text  text  text  text  text  text  text\DotsPage{10}\\
  1.1.2 & line test text text  text  text  text  text  text  text  text  text
  text  text  text  text  text  text  text  text\DotsPage {12}\\
  1.1.3 & line for comparison\dotfill & 13 
\end{tabularx}
\end{document}

Responder3

Essas coisas são quase sempre melhor definidas como uma lista do que como uma tabela, aqui apenas usando, enumeratemas você pode querer um formato de lista personalizado ( enumitempacote pode ajudar)

insira a descrição da imagem aqui

\documentclass{article}

\begin{document}
\def\Dotfill{{\def\hfill{\hskip4em plus 1fill}\dotfill}}



\begin{enumerate}

  \item[1.1.1] test text text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  text  \Dotfill  10 
  \item[1.1.2] line \Dotfill  12 
\end{enumerate}

\end{document}

informação relacionada