Tabellarisch ans Ende der Zeile verschieben

Tabellarisch ans Ende der Zeile verschieben

Wie erreiche ich, dass der Text der letzten Spalte unten in der Zeile steht?

Bildbeschreibung hier eingeben

Das heißt, ich möchte, XXXdass es an der Linie ausgerichtet ist, die den Pfeil enthält.

Ich habe versucht, damit herumzuspielen \multirow{3}{-3ex}{XXX}, aber ich verstehe es offensichtlich nicht \multirow.

Code:

\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}

Antwort1

(Bearbeitete Antwort, verwendet anderen Mechanismus)

Bildbeschreibung hier eingeben

\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}

Die ursprüngliche Antwort verschob die Grundlinie der X-Spalte nach unten mit

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

Das betrifft aber alle XSpalten und bewirkt auch die a.Ausrichtung auf der untersten Zeile. Letzteres Problem könnte man beheben, indem man die a.in die zweite Spalte verschiebt (mit einem hängenden Einzug).

Wenn Sie nur die Ausrichtung einiger X-Spalten in einer Tabelle ändern möchten, können Sie Folgendes verwenden:

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

Antwort2

Wenn Sie damit spielen möchten \multirow, können Sie das zweite optionale Argument verwenden, nämlich das „Fixup“, eine Länge zur Feinabstimmung der Position.

In deinem Fall müsste es sein-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} 

Ausgabe:

Bildbeschreibung hier eingeben

Antwort3

Abhängig von der Art des mit verknüpften Inhalts XXXgibt es folgende einfache Möglichkeit, die Ausrichtung unten zu erreichen, ohne dass die vorhergehenden Spalteneinträge bekannt sein müssen:

Bildbeschreibung hier eingeben

\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}

Idee: XXXIn einer eigenen Zeile setzen, aber mit dem Ende der vorherigen Zeile überlagern \\[-\normalbaselineskip].

Antwort4

Hier ist eine Lösung mit {NiceTabularX}of nicematrixund dem integrierten Befehl \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}

Sie benötigen mehrere Kompilierungen (da nicematrixim Hintergrund PGF/TikZ-Knoten verwendet werden).

Ausgabe des obigen Codes

verwandte Informationen