Mover la entrada tabular al final de la fila

Mover la entrada tabular al final de la fila

¿Cómo consigo que el texto de la última columna esté al final de la fila?

ingrese la descripción de la imagen aquí

Es decir, quiero que XXXesté alineado con la línea que contiene la flecha.

Intenté jugar con \multirow{3}{-3ex}{XXX}, pero obviamente no lo entiendo \multirow.

Código:

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{multirow}

\begin{document}
    \begin{tabularx}{\linewidth}[t]{l X p{1.3cm}}
        & Header & Title \\\cmidrule(lr){2-2}\cmidrule(lr){3-3}
        a. & Some text text text text text text text text text text text text text text 
            text text text text text text text text text text 
            Want XXX on this line $\rightarrow$%
         & XXX\\
    \end{tabularx}
\end{document}

Respuesta1

(Respuesta editada, usando un mecanismo diferente)

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}

\makeatletter
\def\foo#1{\leavevmode
\expandafter\ifx\csname PDFSAVE#1\endcsname\relax
\expandafter\gdef\csname PDFSAVE#1\endcsname{0sp}%
\fi
\pdfsavepos\write\@auxout{\gdef\string\PDFSAVE#1{\the\pdflastypos}}}
\makeatother
\begin{document}
    \noindent
    \begin{tabularx}{\linewidth}[t]{l X p{1.3cm}}
        & Header & Title \\\cmidrule(lr){2-2}\cmidrule(lr){3-3}
        a. & \foo{a}Some text text text text text text text text text text text text text text 
            text text text text text text text text text text 
            Want XXX on this line $\rightarrow$\foo{b}%
         & \smash{\raisebox{\dimexpr\PDFSAVEb sp-\PDFSAVEa sp\relax}{XXX}}\\
    \end{tabularx}
\end{document}

La respuesta original movió la línea de base de la columna X hacia la parte inferior usando

\renewcommand\tabularxcolumn[1]{b{#1}}

Pero eso afecta a todas Xlas columnas y también hace que a.se alineen en la fila inferior. El último problema podría solucionarse moviendo el a.a la segunda columna (con una sangría francesa)

Si solo desea cambiar la alineación de algunas columnas X en una tabla, puede usar:

>{\begin{minipage}[b]{\hsize}}X<{\end{minipage}} :-) 

Respuesta2

Si quieres jugar con \multirow, puedes usar el segundo argumento opcional, que es "arreglar", una longitud para ajustar la posición.

En tu caso debería ser-2\baselineskip

MWE:

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{multirow}

\begin{document}
    \noindent
    \begin{tabularx}{\linewidth}[t]{l X p{1.3cm}}
        & Header & Title \\\cmidrule(lr){2-2}\cmidrule(lr){3-3}
        a. & Some text text text text text text text text text text text text text text
            text text text text text text text text text text
            Want XXX on this line $\rightarrow$%
         & \multirow{1}{*}[-2\baselineskip]{XXX}\\
    \end{tabularx}
\end{document} 

Producción:

ingrese la descripción de la imagen aquí

Respuesta3

Dependiendo del tipo de contenido asociado con XXX, la siguiente es una manera fácil de obtener la alineación inferior que no requiere conocimiento de las entradas de las columnas anteriores:

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}

\begin{document}

\noindent
\begin{tabularx}{\linewidth}[t]{l X p{1.3cm}}
  & Header & Title \\\cmidrule(lr){2-2}\cmidrule(lr){3-3}
  a. & Some text text text text text text text text text text text text text text 
      text text text text text text text text text text 
      Want XXX on this line $\rightarrow$
   & \\[-\normalbaselineskip] && XXX
\end{tabularx}
\end{document}

Idea: colocarlo XXXen su propia línea, pero superpuesto con la parte inferior de la línea anterior usando \\[-\normalbaselineskip].

Respuesta4

Aquí hay una solución con {NiceTabularX}of nicematrixy su comando incorporado \Block.

\documentclass{article}
\usepackage{nicematrix}
\usepackage{booktabs}

\begin{document}
\begin{NiceTabularX}{\linewidth}[t]{l X p{1.3cm}}
    & Header & Title \\\cmidrule(lr){2-2}\cmidrule(lr){3-3}
    a. & Some text text text text text text text text text text text text text text 
        text text text text text text text text text text 
        Want XXX on this line $\rightarrow$%
     & \Block[B]{}{XXX \strut} 
\end{NiceTabularX}
\end{document}

Necesita varias compilaciones (porque nicematrixutiliza nodos PGF/TikZ bajo el capó).

Salida del código anterior

información relacionada